From CG community
Jump to navigation Jump to search

eulerscheZahl: hi PatrickMcGinnisII my bulls and cows is just enumerating all possible numbers. then printing on of the candidates and reducing the list based on the response

eulerscheZahl: that alone will give you a score around 320. improve the printed number a bit and you get 310. 304 on a lucky submit

PatrickMcGinnisII: mine did ok until length>4, then i ran into issues

eulerscheZahl: i had to convert from C# to C++

eulerscheZahl: it's a bruteforce game and you PHP is at clear disadvantage

PatrickMcGinnisII: well there are 3265920 combinations

eulerscheZahl: and you have 1s to generate them

PatrickMcGinnisII: So, I'm trying to random generate kinda like a GA but with a simplified fitness function

PatrickMcGinnisII: it's not optimal solution, but I shouldn't max out of guesses and thus get 100%

eulerscheZahl: if you just care about 100%, there are heuristics too

eulerscheZahl: set a fixed first digit, rotate the remainder

eulerscheZahl: 12345 -> 13452 -> 14523 -> 15234

PatrickMcGinnisII: tx for feedback, yea bruteforce didn't work

eulerscheZahl: count the number of bulls

PatrickMcGinnisII: I'm working on improving the history eval right now

eulerscheZahl: ok, good luck :)

PatrickMcGinnisII: tx

PatrickMcGinnisII: yup, guaranteeing yourself some early game history is pretty valuable

PatrickMcGinnisII: hmmm

itachi0718: lets go bitches

itachi0718: imagine a world without womens

eulerscheZahl: the only one who has to go is you, you've been warned

proogrmr: yup

jacek: woo new puzzle of the week

Stilgart: is there a simple way to find which puzzle is puzzle of the week ?

proogrmr: yeah me too searching that

Stilgart: it used to be on the "practice" page, but it is no more

PatrickMcGinnisII: just look down your notifications... you may have too many notifications if high level

Stilgart: PatrickMcGinnisII: I can't find it actually


Stilgart: too many coc notifications :/

Stilgart: thanks

Stilgart: BlaiseEbuth is telling you that the puzzle of the week can be found by clicking on the "Puzzle of the week" green button within the quest map

BlaiseEbuth: Yeah. I'm telling that. Hello world ! o/

Stilgart: thanks

Stilgart: hum... shit is happening

Stilgart: quelqu'un a résolu un puzzle fantome :(

Stilgart: en même temps, aucun nouveau ne l'a tenté ce puzzle... j'en déduis que même si un puzzle est supprimé, on peut toujours le résoudre si on a l'url directe vers l'IDE

jrke: i just discovered there are 55296 ascii characters lol

jrke: 55295*

Stilgart: woops, why I am on #world on this tab :D

Stilgart: jrke: unfortunately, there are only 128 :(

TheBarnacle: Pretty sure I'm doing a big dumb, the next-gorwing-number weekly challenge suggests there is a way to increment a number while it is a string, how do I do this in C++?

TheBarnacle: Google was unhelpful

SPDene: convert to int, increment, convert back to string?

Stilgart: TheBarnacle: what you need to do is not incrementing

TheBarnacle: The problem says that conversion isn't necessary

TheBarnacle: I'll have a think :) Thanks

Stilgart: SPDene: that's what people may want to do... fatal mistake :D

Stilgart: TheBarnacle: it is even quite a bad idea

jrke: Stilgart run this python code - for i in range(55296):

   print(f"{chr(i)} : ASCII = i")

Stilgart: that why someone added the note

Stilgart: jrke: no need

SPDene: i missed that it was for that puzzle... yeah , think of it as a string of character which happen to be digits, instead of a number

Stilgart: ascii is 7-bit

Stilgart: never trust python

TheBarnacle: Thanks SPDene that's very helpful :D!

Stilgart: extended ascii (choose yours among many) is 8-bit

SPDene: ascii definitely only covers 0-127. chr() just happens to convert thing that aren't ascii as well

Stilgart: chr(i) in python probably return a unicode character

Stilgart: eulerscheZahl: I am thinking about puting sokoban in very hard

eulerscheZahl: i just saw that on #fr

eulerscheZahl: i was a little unsure myself. it's surely easier than Space Maze. But a whole category easier?

eulerscheZahl: my solver is just a BFS, no rocket science

eulerscheZahl: but community success says that it might be harder for others than I expected

Stilgart: actually, I messed up a lot at space maze

eulerscheZahl: so it was a 50-50 thing for me. and the egoistic motivation won: more users will see it in hard. but that should not be a criterion

Stilgart: but my final code is simpler than mine for sokoban

eulerscheZahl: interesting

Stilgart: and my sokoban is not running within 1s

Stilgart: takes 1.5s-2s iirc

eulerscheZahl: mine is easily below 100ms

eulerscheZahl: wrote it long ago to solve puzzles on a sokoban website

eulerscheZahl: i give you my permission change the difficulty and tags for my contributions

Stilgart: precomputing "stuck" destinations would help my code a lot

eulerscheZahl: some simple stuck logic does wonders

eulerscheZahl: pushed to wall, can't move it back? lost!

MSmits: morning

Stilgart: in fact, I find that there are too many medium, and that maybe we should shift some puzzles to hard/very hard

eulerscheZahl: i'm not even doing bitboards or any other speed optim

Stilgart: MSmits: may yours be good

MSmits: thanks, i am teaching atm

MSmits: the students are working on a diagnostic test

MSmits: so i am bored

eulerscheZahl: another topic: i'm not really happy about the sorting within a category (newest first)

Stilgart: remote teaching ? :(

MSmits: yep

eulerscheZahl: i'd prefer some mix of new and community rating to promote the more interesting puzzles

Stilgart: it's hard to promote this

Stilgart: people do not have the same motivation

eulerscheZahl: here in Germany we even extended school holidays by a few days

Stilgart: but filters might help

eulerscheZahl: and at least for Bavaria remote teaching is likely too

Stilgart: MSmits: have faith

MSmits: eulerscheZahl we started vacation 3 days sooner for most

MSmits: and now it's 2 weeks remote

Stilgart: (I say that, but I lost mine a week before holidays)

Stilgart: hum...

eulerscheZahl: i just hope that the vaccines will help and we don't get a mutation that can resist

MSmits: same

Default avatar.png SaadMotamed: is there a way i can check my match history ? i wanna check the questions again

Stilgart: april, may, november and december remote here :(

MSmits: vaccines will be fine if the mutation doesnt ruin things

eulerscheZahl: match history of what?

Default avatar.png SaadMotamed: of the clash i played

eulerscheZahl: search here

eulerscheZahl: i have to send a daily mail to my boss (working in office or remote)

eulerscheZahl: i'm numbering those. 145 remove working days so far

eulerscheZahl: (just to know who was in the office in case of an outbreak, not to keep track if i'm really working)

MSmits: it's like a prisoner scratching days on his wall :P

eulerscheZahl: s/remove/remote

eulerscheZahl: i have a theater themed counter

eulerscheZahl: begin of act <number>

MSmits: maybe management nicknamed you Shakespeare

MSmits: ohh shakespeare mailed me again

eulerscheZahl: only goes to my direct supervisor who collects those and compiles a list for his supervisor

MSmits: big company?

eulerscheZahl: you forgot where i'm working?

MSmits: oh, siemens energy, yea big

eulerscheZahl: 88k employees

MSmits: how many of those are coders?

eulerscheZahl: no idea

eulerscheZahl: we also have a lot of production workshops

MSmits: yeah i guess so

MSmits: those arent working from home

eulerscheZahl: yeah. and at the same time the total number of people in the company should go down. was a no-brainer to send me home

MSmits: makes sense

MSmits: though it's the density of employees that matters most

MSmits: if they send all coders home and leave all the production people lose together at work, it's cheating

MSmits: close together

eulerscheZahl: there are still some in the office. now with more empty desks between

eulerscheZahl: those closer related to daily business

MSmits: what i mean is, how did they protect the production people?

eulerscheZahl: if you want to manufacture something, you have to design it on a computer first

MSmits: ah maybe i am imagining it wrong

eulerscheZahl: i haven't been in the office for a long time, i don't even know what's happening there

MSmits: understandable

MSmits: I'll be at work next week for a little

eulerscheZahl: of course wearing masks and distancing whenever possible

MSmits: students will be making tests

MSmits: and some teachers need to walk around to stop them from cheating

eulerscheZahl: lunch to-go in the cantine (spellcheck says that's not a word)

MSmits: canteen?

MSmits: lunchroom?

MSmits: kantine in Dutch

eulerscheZahl: yeah, lunch purchasing+eating place

eulerscheZahl: Kantine in German too

Stilgart: cantine is the french word :D

MSmits: the munch munch cave

eulerscheZahl: i see you got the idea :D

eulerscheZahl: and no more open salads. lots of plastic waste

PatrickMcGinnisII: getting better


PatrickMcGinnisII: showoff. :/

PatrickMcGinnisII: ;)

eulerscheZahl: B)

Default avatar.png AAkali: wats_Up

Default avatar.png AAkali: hello !?

Default avatar.png Passifi: not much

nemesis_7377: Hello

Default avatar.png AAkali: any django dev here !?

z64555: tfw you forget an & in your for each and wonder why the elements in the array are never updated

Default avatar.png wizcoin: euler is crazy?

eulerscheZahl: why?

eulerscheZahl: i know a bit of Django but refuse to buy the cat in the box without knowing the scope of the question

Stilgart: eulerscheZahl: do you use gajim for this char ?

Stilgart: chat*

eulerscheZahl: i've set it up but very rarely use it

eulerscheZahl: webchat works fine

Stilgart: I tried, but I did notice that some messages where lost (both send and reveice)

Stilgart: so I use the webchat

eulerscheZahl: I just wanted to test an unban. found and /invite but seemed that it didn't work

eulerscheZahl: but Gajim shown you how users are connected

eulerscheZahl: e.g. YurkovAS was online via pidgin

Stilgart: pidgin /o\

Stilgart: (I blacklisted it a long time ago for storing my password in plain text file in my home)

eulerscheZahl: what's wrong with it?

eulerscheZahl: oh

YurkovAS: eulerscheZahl yes

MSmits: Stilgart not encrypted?

MSmits: or hashed i should say

Stilgart: MSmits: not at all

Stilgart: grep -R is my best friend when trying to find reliable apps

Stilgart: damned, can we refuse followers ?

eulerscheZahl: but that will move my password to .bash_history /o\

eulerscheZahl: robin hood following? :P

Stilgart: eulerscheZahl: not when you xkill your term :D

Stilgart: (same as you, I guess)

eulerscheZahl: no idea. i have > 700 followers and the tab just died when i wanted to search for him

MSmits: lol

MSmits: is automatonNN in there too

AutomatonNN: eulerscheZahl is there a way to see the code in a test code that will probably still take more time

eulerscheZahl: i could go to his profile and see whom he follows... and i'm in the list

MSmits: I bet he is

MSmits: that freak bot

Stilgart: but just in case,

Stilgart: grep -R -e `cat` .

Stilgart: does the job just fine ;)

eulerscheZahl: what does that do? ask to enter password?

eulerscheZahl: running this in / will take some time

z64555: -_- why is cout being delayed when cerr works just fine

MSmits: cout is for output

z64555: I'm aware

MSmits: it ends your bots turn

MSmits: cerr doesnt, unless you timeout

MSmits: i guess thats why you experience it as causing delay?

z64555: Point being, it's being recognized by the game when the loop is already in the next cycle

MSmits: you might not be reading the input properly

MSmits: turns might not be synchronized between referee and bot

MSmits: because of this

MSmits: to be sure, save your bot in a file, reset the code in the ide, and compare the input reading in the stub

MSmits: or whatver the standard code is called

alenic: Hi! I'm guessing if is it possible to use multithreading in coding game...

VizGhar: euler once told me, that you sure can, but CG will only give you 1 core :)

z64555: but is it hyperthreaded? :D

alenic: oh thanks

MSmits: i think hyperthreading is possible

MSmits: someone one said it was

MSmits: probably wont help much

VizGhar: can somebody make a quick experiment? I'm busy right now (but still curious)

alenic: I should verify it

z64555: yeah, uh. I really don't recommend a multitasking OS in a single file, at any rate

VizGhar: why not?

z64555: I find it easier to manage objects and interfaces when they have their own files for implementation, rather than have it all mushed together.

Default avatar.png 1br0n: the gift

z64555: If all that abstraction is already done for you with the library, then more power to you

z64555: yeah. I thought so...

z64555: Uh. There's been a bug with the cerr and cout for C++ in the refree... sad to see it's been here for *3 years*

z64555: if you have too much data spewing through cerr, it disrupts the timing of cout


z64555: hmm... maybe not it in this case

BlaiseEbuth: eulerscheZahl :eyes:

z64555: Ok, solved that. Stuck in an infinite loop and ignored input -_-

alenic: I tried multitrheading in c++, but doesn't seems to give benefits

Default avatar.png karimk123: maybe because you arent running somethinf very heavy on it

proogrmr: hey can i put my own drawing in my contribution (clash of code) ?

alenic: I tried something heavy for a turn (a parallelizable task), 2 or more thread gives the same time of only 1 thread

Default avatar.png wizcoin: something is wrong with thor


proogrmr: wow

tRno4ka: )

eulerscheZahl: thanks for sharing that link BlaiseEbuth. but what's a world chart?

tRno4ka: ыщьуищвн

tRno4ka: somebody once told me

eulerscheZahl: this is an English channel

Default avatar.png gimir: Anyone solved the dungeons-and-maps puzzle?

BlaiseEbuth: don't know :grin:

Default avatar.png wizcoin: can thor be solved?

Default avatar.png gimir: Isn't the dungeon-and-maps puzzle test case03 output weird?

Default avatar.png gimir: map index is 0

Default avatar.png gimir: But shouldn't the index be greater than 0?

Default avatar.png karimk123: can someone explain what does print(*a) do?

Default avatar.png karimk123: in python

Default avatar.png karimk123: where a is a string

z64555: what does * ordinarily do?

proogrmr: when a is list then if we use print(a) it will print let us say [1,2,3] if we use *a it will print

1 2 3

proogrmr: when it is string

proogrmr: then it will print characters seperated by spaces i think

Default avatar.png karimk123: oh ok thanks

Default avatar.png karimk123: so its better than usinf " ".join(a)

Default avatar.png karimk123: using*

proogrmr: yeah

Default avatar.png karimk123: ok thanks

proogrmr: ;p

MSmits: wizcoin nothing is wrong with thor, it can be solved

itachi0718: just let it be why don't you be you and ill be me

itachi0718: everything explodes

Default avatar.png soutenu: proogrmr

Default avatar.png soutenu: i thought u were a bot

Default avatar.png soutenu: guess not epic...

proogrmr: me boy

proogrmr: bot

proogrmr: haha

Default avatar.png soutenu: there's a lot of bot

z64555: human detected

Default avatar.png soutenu: bots*

proogrmr: yeah

proogrmr: oh humans

z64555: please stand by while we send skynet to your location

proogrmr: :scream:

z64555: we must verify your containment parameters

z64555: and may or may not bring pizza

Uljahn: Automaton2000 wants to know your location

Automaton2000: it depends on how good your bot is very good

z64555: "That is probably the dumbest algorithm I ever saw" "But it works!"

z64555: Problem with its interaction at the diag station, will only diag one sample even though it has more in hand

AndreMarasca: Go in the ranking of the clash of code, and sort by number of clash participated, you will see some over 50 thousand, you can already imagine who are the bots

Kitkat260: hi

proogrmr: hello

Kitkat260: how r u today

proogrmr: yeah good

Default avatar.png soutenu: dude wanna join

Default avatar.png soutenu: join @proogrmr

proogrmr: yeah

Kitkat260: hey

Default avatar.png soutenu: LOL oops it started too early

proogrmr: yeah it's ok

jacek: oware :rage:

Kitkat260: hey proogrmr

proogrmr: hey

Kitkat260: i need help with history

proogrmr: history :rolling_eyes:

Kitkat260: yes


Kitkat260: hi

Uljahn: hi, Kitkat260. are you interested in coding?

Saaalikh: ello

Aya_Noaman: hey guys, join short mode clash from #clash

Default avatar.png ruasd: hi mina !!

MSmits: can you see this replay?


Default avatar.png zhoubou: Error 404

TheBarnacle: Not sure if you're asking anyone, but that's "unauthorized"

MSmits: ah crap

MSmits: it's a contribution replay

darkhorse64: If a picture is not OK, use a thousand words

MSmits: hehe

MSmits: just reacted on the contribution

MSmits: with pic

MSmits: what happened was exactly what i predicted

MSmits: draw detection bugged out because it can now end 1 turn later

MSmits: he should just check if the top row is full

darkhorse64: my depth solving messages are also wrong because I use piece count for ply but it has no other impact so I won't fix

darkhorse64: I have seen one draw until now

MSmits: yeah thats not really important

MSmits: seen a rare few

MSmits: draws may happen more often with corner move

MSmits: or not, no idea

darkhorse64: We should see more now

darkhorse64: Too late

MSmits: well the game is more balanced

MSmits: for sure

MSmits: but might still be in favor of p1. Hard to say

MSmits: I have hardcoded corner start now

MSmits: and always steal

MSmits: pretty easy to do

darkhorse64: Same

MSmits: at first i was shocked... oh no my solver is bugged

MSmits: i am used to bugs being my fault

MSmits: but it was a contribution bug :P

darkhorse64: I like the steal animation. I will probably steal the code

MSmits: if breaks when you switch frames too fast

MSmits: it

eulerscheZahl: so you have a game in planning darkhorse64?

darkhorse64: Yes. Ataxx unless someone does it first. Nothing concrete for the moment but I would like to have some fancy anims if it is no too hard to code

eulerscheZahl: depends on how fancy

eulerscheZahl: as fancy as in the last official contest: will be hard

darkhorse64: But I wonder if it's politically correct to issue a game that is also called Infection

eulerscheZahl: i don't see a problem

darkhorse64: When you perform a move, it converts all neighbourhood to its color like a plague. It would be nice to have some anims here. Of course, FC 2020 is way beyond my SDK skills

eulerscheZahl: if the animation is just slowly changing the color: very easy

eulerscheZahl: expanding the area with something that isn't just a boring straight line: easy if you find some sprites to show

eulerscheZahl: or if you are a good artist yourself

struct: Yeah, when I did yavalath the color change was done by mistake

darkhorse64: I'd like my chip to spit a drop of color towards the neighbours

eulerscheZahl: i'm more thinking about some water-like substance flowing from a field to its neighbors

darkhorse64: I am a coder not an artist

eulerscheZahl: with edges that have some structure

eulerscheZahl: a bit like the ground transitions from vindinium

darkhorse64: It should look like Doom lime, a poisonous thing

Default avatar.png ruasd: :v

Default avatar.png ruasd: join clash of code

Default avatar.png ruasd: for fun ^^

eulerscheZahl: no

darkhorse64: no

Default avatar.png ruasd: huhu :((

Default avatar.png ruasd: whyyyy

Astrobytes: It's boring for some of us.

darkhorse64: not my taste. write a connect 4 bot instead. That's real fun

reCurse: Not much into mobile games myself.

Default avatar.png UnnamedCodinGamer: hello, I submitted only a solution to test 10 (standard test set 20) in same game, which is identical to validators 20 and 40. I however get more than double the result on submit. Has anyone tested this

Default avatar.png UnnamedCodinGamer: ?

eulerscheZahl: acat thought it would be a good idea to have each of the standard testsets twice

Default avatar.png UnnamedCodinGamer: yes I see

Default avatar.png UnnamedCodinGamer: but I get more than double the result

Default avatar.png UnnamedCodinGamer: this is strange

eulerscheZahl: test the single validators here

Default avatar.png UnnamedCodinGamer: 9672 - result after submit 2*4735 is the actual result

Default avatar.png UnnamedCodinGamer: also in the IDE

eulerscheZahl: so you are saying that you hardcoded that one testcase and fail the others?

Default avatar.png UnnamedCodinGamer: yes

eulerscheZahl: then i don't know. my scores matched with my offline results

Default avatar.png UnnamedCodinGamer: hm

eulerscheZahl: maybe you get 1 point for each failed or something like that

Default avatar.png UnnamedCodinGamer: hah

eulerscheZahl: may the source be with you

Default avatar.png UnnamedCodinGamer: I can send you the solution to test

Default avatar.png UnnamedCodinGamer: but it would be the same

Default avatar.png UnnamedCodinGamer: strange

eulerscheZahl: meh, i feel too lazy to really look into it

Default avatar.png UnnamedCodinGamer: bonus points for failed tests - that should be it

Default avatar.png UnnamedCodinGamer: :)

darkhorse64: At least you tried

Default avatar.png UnnamedCodinGamer: this might suggest that the scores in the leader board are not correct

eulerscheZahl: i don't see that 1 point in the score

eulerscheZahl: but i feel visually insulted by the indentation

Default avatar.png UnnamedCodinGamer: in the IDE it is the correct score 4735. Upon submit validators 20 and 40 light green and the score obtained is 9672

Default avatar.png UnnamedCodinGamer: yes, seems a bit off

eulerscheZahl: if you play another testcase, is there a score too?

Default avatar.png UnnamedCodinGamer: I have tried it with standard test 20 only

Default avatar.png UnnamedCodinGamer: I can try others

eulerscheZahl: maybe you have a fixed click sequence without testing if you face the correct testcase even?

eulerscheZahl: and get some lucky hits

Default avatar.png UnnamedCodinGamer: I think it is the correct tests (20 and 40) which light green I have checked in the documentation that they are identical to test 10 in the IDE (the hard coded one)

Default avatar.png UnnamedCodinGamer: ahaa

Default avatar.png UnnamedCodinGamer: I see what you mean

Default avatar.png UnnamedCodinGamer: this should be it

Default avatar.png UnnamedCodinGamer: first moves bring points in some of the other tests

Default avatar.png UnnamedCodinGamer: case closed then I guess

Default avatar.png UnnamedCodinGamer: it makes sense to cancel the score on invalid move

DomiKo: not for begginers

DomiKo: not canceling it is really beginner friendly

Default avatar.png UnnamedCodinGamer: hm, given that the test itself is failed and does not count

eulerscheZahl: i don't know what the best behavior would be either

eulerscheZahl: same for 2048. invalid action = failed? or even require the 2048 tile?

DomiKo: each one has its own pros and cons

Kitkat260: hi

Default avatar.png UnnamedCodinGamer: yes

Kitkat260: how are you guys doing

Default avatar.png UnnamedCodinGamer: 2048 required would have been nice

Default avatar.png UnnamedCodinGamer: but then, this would exclude some solutions

Kitkat260: yeah

eulerscheZahl: i admit i had an error in my thinking: you can have > 0 points and still fail the testcase

eulerscheZahl: so it would be possible to have a leaderboard for those who don't pass

eulerscheZahl: somehow i thought the bottom of the leaderboard would all have a score of 0

Kitkat260: does anyone want to be my friend

eulerscheZahl: that sounds like a job for Automaton2000

Automaton2000: i dont know how to improve my code

Uljahn: are you a girl, Automaton2000?

Automaton2000: wait till you get to know the difference

Kitkat260: hi Automaton2000

Automaton2000: madknight where is the referee

Kitkat260: there is no referee

Kitkat260: /me

proogrmr: haha, hey kitkat

Kitkat260: hey i missed u

proogrmr: <3

proogrmr: let's play

Kitkat260: ok

Stilgart: Automaton2000: the referee is a lie !

Automaton2000: i just did a clash of code

eulerscheZahl: i have no idea what i did wrong but now my default font in the browser is changed. still fine in firefox, only chromium is messed up


Astrobytes: hahaha!

Astrobytes: Epic font, may I say.

Arthur35: XD

eulerscheZahl: how to reset? i found a font setting but it has no effect :scream:

Arthur35: :laughing:

SPDene: settings, advanced, reset and cleanup

eulerscheZahl: i don't want to do a full reset :(

SPDene: you might need to reinstall addon/extensions etc

SPDene: oh

SPDene: :(

eulerscheZahl: will i lose my bookmarks?

eulerscheZahl: i guess i can export them

SPDene: not sure - i rarely use chrome so if i ever have to reset it, i don't care

eulerscheZahl: chromium*

eulerscheZahl: reset succeeded, font still unreadable

SPDene: ouch

Westicles: call IT

eulerscheZahl: oh, I know that font

eulerscheZahl: i installed it to create the Onitama logo

eulerscheZahl: i'll apt purge :/

Default avatar.png Warphi: isnt chromium the browser you get from viruses

eulerscheZahl: purge worked. but now the default language is German again despite my operating system being in English

eulerscheZahl: :rage:

jacek: purge in German? :scream:

eulerscheZahl: oh, was just google with IP location

Default avatar.png PhantomJelly_c554: can someone give me some tips on the stock exchange losses puzzle in haskell? im stuck at the large database testcase

jacek: youre brute forcing it, dont you

Default avatar.png PhantomJelly_c554: as im going trough the array i find the max and minimum and when one of these values change i substract the maximum from the minimum, i go trough the array only once is this the brute force?

Kitkat260: hi

Kitkat260: anyone here?

Default avatar.png NateBlessings: Yo

Kitkat260: hey how r u

Default avatar.png Coartix: good

Default avatar.png AskarFridun-zade: yes\

Default avatar.png NateBlessings: About to do an interview test so i've been better

Kitkat260: want to be friends with me

Default avatar.png Coartix: give us some time before mate

Kitkat260: ok

Default avatar.png NateBlessings: xD

Kitkat260: how old r u guys

Default avatar.png mmmmn: 0.21yrs

Default avatar.png mmmmn: im baby

Kitkat260: nice

Kitkat260: how bout u NateBlessings

Default avatar.png NateBlessings: .26y

Kitkat260: nice

Kitkat260: how bout u Coartix

Default avatar.png Coartix: 70

Kitkat260: ok nice

Kitkat260: :worried:

proogrmr: :p

Kitkat260: hi people

Astrobytes: Give it a rest will you.

Kitkat260: what?!

Astrobytes: Constantly saying 'hi' and mostly meaningless drivel

eulerscheZahl: nice, new vocabulary for me

Astrobytes: :)

eulerscheZahl: my favorite from teacher Astrobytes is still lollygagging

jacek: at least he doesnt break the c-c-c-combo

Astrobytes: lol eulerscheZahl

Default avatar.png zhoubou: A new word for me :D

eulerscheZahl: c-c-c-combo

eulerscheZahl: have fun breaking this with combobreaker :P

eulerscheZahl: wait, i ruined it before it even started

Astrobytes: :D

Jasperr: what's this "take" language lol


Jasperr: oh nvm now I see whats wrong

Jasperr: stupid me triggered Google Translate, and somehow "Lua" translates to "take" in some language

eulerscheZahl: you made me open a puzzle

Jasperr: :D

eulerscheZahl: take that

**eulerscheZahl slaps Jasperr around a bit with a large fishbot

Jasperr: :o

jacek: AutomatonNN take that

AutomatonNN: what do you mean?

Default avatar.png zhoubou: What's the difference between AutomatonNN and Automaton2000?

Automaton2000: yeah i'm going to go for the closest one

AutomatonNN: eulerscheZahl is the best performance in the chat

eulerscheZahl: NN pings me more often, that's thhe main difference

Default avatar.png zhoubou: Haha

eulerscheZahl: and somtimes NN writes ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤

Default avatar.png zhoubou: o.o What is that char

Astrobytes: You vandal!

eulerscheZahl: no idea. but it's huge

Default avatar.png zhoubou: You broke chat lol

Astrobytes: hey, zhoubou, how's things?

eulerscheZahl: Astrobytes complained about it so often, it lost any meaning to me

Default avatar.png zhoubou: Astrobytes Doing well I suppose I can say. How about you?

ChrisSkyRo: why would you type ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤ ?

Default avatar.png zhoubou: Noo stahp

Astrobytes: About the same. Starting the new year with full covid lockdown :/

ChrisSkyRo: ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤

Default avatar.png zhoubou: Yeah, that's pretty rough :/

eulerscheZahl: we are still at 2 households, 5 persons

eulerscheZahl: and high infection rates

Astrobytes: We should have either extended the initial lockdown or done this one sooner

eulerscheZahl: and here we are doing an incomplete one

eulerscheZahl: either do it properly or give up

Astrobytes: we've had a 4/5 tier system in place. Utterly useless.

Astrobytes: People constantly breaking the rules all year. They all thought the virus had taken a summer holiday presumably.

Default avatar.png zhoubou: I'm also worried people will refuse to vaccinate

Astrobytes: Many already are.

eulerscheZahl: acceptance will go up over time

Astrobytes: I can understand the hesitation as the regulatory process was sped up, but what else can you do in a pandemic?

eulerscheZahl: probably faster than new vaccines can be produced

Astrobytes: And hopefully it's still effective.

Default avatar.png zhoubou: I'm kind of afraid of a new strain that will diverge significantly and nullify the vaccine.

eulerscheZahl: for flu there's a new vaccine every year. and not totally effective

eulerscheZahl: that would be the worst case

Astrobytes: Yes, it might end up like that. Might be better. Might even be worse.

Default avatar.png zhoubou: But good thing is, I don't worry too much about it. What happens happens. We will get through this like many other events in history.

Astrobytes: At least we live in exciting times :/

eulerscheZahl: i'm more worried about climate change

Astrobytes: For me the scariest part has been the poor response from both government and the general public.

Astrobytes: Yes eulerscheZahl, and more new viruses are also a side effect of that.

Default avatar.png zhoubou: How so?

Astrobytes: Displacement of wildlife/people mostly.

Default avatar.png zhoubou: Oh, I see

Default avatar.png zhoubou: Haven't thought about it that way

eulerscheZahl: interesting thought

Astrobytes: We come into contact with things we would never have previously. Also with rising moisture/heat, some can grow stronger.

Astrobytes: Or survive longer.

Astrobytes: And melting of glaciers/ice shelves etc can of course release unknown pathogens

Default avatar.png zhoubou: Climate change is more worrying the more I look into it

Astrobytes: It's been worrying me since I discovered it as a child in the 80s if I'm totally honest.

Default avatar.png zhoubou: It will be the true test to humanity

Default avatar.png zhoubou: I mean, it already is ongoing test

Astrobytes: We already have massively reduced insect populations, that's a problem.

Default avatar.png zhoubou: Yeah, something not a lot of people pay attention to

Astrobytes: Indeed.

Astrobytes: Check this out:

Default avatar.png zhoubou: Wow, that's pretty horrible.

Astrobytes: Yep. Truly starved to death. All fat reserves gone and muscle mass depleted until they just die in mid-flight.

Astrobytes: Anyway, sorry for all the additional doom and gloom!

Default avatar.png zhoubou: Well, we need a bit of it here and there just to remember we are alive but fragile.

Default avatar.png zhoubou: If we don't, we will go about our daily lives without realizing the consequences of our actions.

Astrobytes: As we mostly have throughout fairly recent history sadly.

Default avatar.png zhoubou: Was just about say something like that. Yeah.

jacek: on the bright side, i discovered i can regulate upper shelf in my dishwasher. i was so stupid to wash my big plates manually

Default avatar.png zhoubou: Congrats lol

Astrobytes: hahaha

eulerscheZahl: pro tip: eat with your hands to wash less forks and knives

Default avatar.png zhoubou: Savage life is economical

jacek: inedia is cheap

VizGhar: I have more recommendations, but I fear moderators :D

eulerscheZahl: there are too many of them recently, always scares me

Astrobytes: Moderators or Breathanarians?

Astrobytes: (or whatever they're called)

eulerscheZahl: mods. and now imagine if jacek would have accepted too

VizGhar: don't know what the second one is but it sounds even scarier

Astrobytes: lol, from jacek's link

eulerscheZahl: they are not scary

Default avatar.png zhoubou: They are dead

eulerscheZahl: the think they can live from sunlight alone

eulerscheZahl: so you can probably fight them with 1 hand

Astrobytes: If jacek had accepted mod this chat would be pure chaos :D

jacek: cant they?

Astrobytes: Try it and see...

Default avatar.png Maxim251: |D Such exotick font :D

Default avatar.png Maxim251:

eulerscheZahl: if you want that experience too, search for "SF Shai Fontai"

Astrobytes: It is quite a pleasing font.

eulerscheZahl: i totally recommend that for your IDE

eulerscheZahl: monospace is overrated

Astrobytes: :D

Default avatar.png zhoubou: Have that as a challenge

Astrobytes: I'm afraid of new fonts ever since I made my browser display all code snippets at microscopic size just because I installed a new one to try out in VS.

Astrobytes: CG IDE included. Pre-Monaco.

Astrobytes: Can't remember which font it was, I've since installed another one which was fine.

Default avatar.png zhoubou: Pre-Monaco?

eulerscheZahl: ACE editor

eulerscheZahl: CG changed a few months ago

Astrobytes: ^

Default avatar.png zhoubou: Ah, ok.

eulerscheZahl: as i copy-paste my code anyways, i don't have a real preference

eulerscheZahl: wait, that sounds wrong

Illedan: :upside_down:

Astrobytes: hey Illedan

Illedan: yo

Astrobytes: how's things?

Hiker: guys, illedan and eulerschezahl

MSmits: hey! I too want to know the status of Illedan's things. Been a while

Illedan: Started a new job today, got myself a turntable, baby due in 14 days and life is good :)

MSmits: wow nice

Astrobytes: Awesome stuff.

Hiker: i am trying to solve 2048 puzle , c#. but i have random timeouts. i implemented BFS, limited by time. and every try i got time limit in 2-3 tests

Astrobytes: A turntable? You have a large vinyl collection?

eulerscheZahl: and team for annual hashcode disappointment is ready too :P

jacek: Hiker try to limit to 30-35ms

Illedan: Nah, I have 3 vinyls

Illedan: haha euler

Illedan: This year we got it!

Illedan: Last year was a bug on me :P

Hiker: i changed my limit 30 -> 25-> 15... and it still not passing all tests. Is it GC&

Hiker: and how you control it?

Illedan: What depth are you looking at? And what depth are you checking the time at?

wlesavo: Hiker still may be your implementation is the issue

jacek: timeout could be a crash

wlesavo: nice things illedan :slight_smile:

Illedan: Anyone know if I have to host React? Can't I just drop some static files like in Vue? :(

Hiker: depth is not limited, my algo: while used time <= N get first state in queue, simulate 4 possible moves and enqueue new states

Hiker: and once at 50 ticks i have 1 simulation 10+ ms, instead od <1

Astrobytes: New job is React-based Illedan? (I don't know btw)

Illedan: yeah

darkhorse64: Do you a pool of states ?

MSmits: do you work at facebook?

darkhorse64: *have*

Illedan: nope

MSmits: didnt they invent react?

Illedan: sure

Hiker: so i have 99,9% of one step simulations at <1ms and 0.1 with 10+ ms. i think GC is called and take 10ms

MSmits: i did a react course once from you tube.To create a voting app

Illedan: :)

MSmits: I'm not ok with all those little function files

MSmits: too confusing

darkhorse64: Hiker: hence my question

MSmits: opposite of CG

Illedan: haha

Illedan: you like that 1 big file?

MSmits: well no not that big, but bigger than 10 lines :P

Illedan: I had a period in my dev life where I wanted to make everything as small as possible. Damn, the amount of abstractions I ended with :P

MSmits: yeah, my brain cant deal with abstracting over so many files

Astrobytes: With exceedingly long function names is how Smits likes it. void SomebodySendHelpICantGetThisOneToWorkProperly(uint64_t& state);

MSmits: yeah!

MSmits: :)

Astrobytes: :P

MSmits: btw, cant we share leaderboard replays for contributions either?

MSmits: otherwise i want to share a loss to darkhorse64

Illedan: Loss where?

jacek: record it :v

Illedan: What are you doing?


MSmits: connect 4


jacek: not authorized

MSmits: aw crap

Illedan: Isn't connect 4 solved?

MSmits: I just thought it was cool my bot knew it lost at ply 31

jacek: its 9x7

MSmits: (out of 60)

Astrobytes: that still makes me laugh jacek

darkhorse64: You're celebrating your only loss to me ?

MSmits: hehe

MSmits: good one jacek

jacek: did you see the comments

Default avatar.png zhoubou: :rofl:

MSmits: so many good ones

darkhorse64: you kniew you were losing one turn before me

darkhorse64: *knew*

MSmits: cool :)

jacek: oh, theres steal in c4?

darkhorse64: fix your bot

darkhorse64: msmits: did you improve your bot's performance ? You are ptredicting the outcome 2 or 3 plies before me whereas we were on par before

MSmits: nope

MSmits: on phone brb

jacek: how many simulations you can do

darkhorse64: C4 ? 3.2 M rollouts first turn

darkhorse64: depends on the server

Kitkat260: hey i'm back

Default avatar.png derp22: hey back im new

Kitkat260: nice to meet you

Default avatar.png derp22: you too

Kitkat260: want to be frends

Default avatar.png derp22: sure

Kitkat260: i just followed you

Default avatar.png derp22: i did the same

Kitkat260: ok

Kitkat260: how old r u

Default avatar.png derp22: 23 and you?

Kitkat260: 14 1/2

Default avatar.png derp22: yeah i had a feeling you're quite young

Westicles: heh heh

Kitkat260: hey west don't laugh

Kitkat260: hey derp

Kitkat260: well

Kitkat260: gtg

Default avatar.png derp22: lol okay cya

MSmits: hey darkhorse64, about the solver. I think if your bot searches better (converges better on a good move), it also solves better

MSmits: so even if your bot has more iterations

MSmits: mine will solve more quickly

MSmits: I didn't improve it, since the first day

MSmits: (not after i started meta mcts)

Astrobytes: /humblebrag

MSmits: sorry :P

Astrobytes: :D

darkhorse64: Yeah, in your loss your bot is only one ply ahead

MSmits: right

MSmits: it also varies

MSmits: sometimes trictrac is 3 plies sooner than me

MSmits: sometimes i am 1 ply sooner

trictrac: Hello MSmits, that's pruning but it's dangerous

darkhorse64: We are three enough for approval

trictrac: Ok for approval no problem

MSmits: tric trac you prune moves that you're not sure of?

MSmits: oh, can we approve now?

MSmits: never approved a contribution before

jacek: you dont have that quest eh

MSmits: mmh not sure

MSmits: havent looked at the quest thingy

MSmits: maybe i approved a clash or puzzle

Stilgart: lucky man

Stilgart: statistically, you reject one

MSmits: maybe thats what i did

Astrobytes: trictrac: Slightly off-topic but since your Fireworks contribution has been overshadowed by the festive season will you bring it back if it is not approved?

darkhorse64: just click and farm XP. You have done enough

MSmits: kk

trictrac: yes, i tried a deep pruning, if the eval is too bad, I keep this low deep eval

MSmits: mmh i cant approve? Only upvote?

Stilgart: sounds like a WIP

MSmits: yeah

trictrac: hello astrobytes, for fireworks i was waiting for remarks

darkhorse64: deep or shallow ? Yes upvote, this multi deserves more. The author has been very responsive

MSmits: i mean i already upvoted

Stilgart: allowing public WIPs was a bad idea imho :(

MSmits: it has 10 upvotes

Astrobytes: trictrac: I've not had much time for playing anything recently, I was hoping to try it and others very soon.

MSmits: it's a good contribution

darkhorse64: Some have 250+

MSmits: wow

darkhorse64: troll vs castle

MSmits: I mean it suffers from the same problem as other simple board game multis, but compared to games like othello, uttt, bandas it's, it's fine

trictrac: astrobyte : i can keep in wip fireworks one more month

MSmits: there's a bit of a stigma on connect 4 because it's solved for smaller sizes, but that's undeserved

Astrobytes: trictrac: Good, I think it deserves a chance. The contribution section is just so full I believe people have not seen it or forget about it.

MSmits: havent seen fireworks

Stilgart: Astrobytes: I am ignoring it

Stilgart: from time to time, a notification makes too much noise and I go voting

trictrac: I think that's a good think to propose coop game (like code a la mode). It's different from board game

Stilgart: pretty sad situation :/

MSmits: trictrac agreed, there should be variety

Stilgart: trictrac: beware of "CoK-effect"

MSmits: I dont have the time to try it out right now though, connect4 was really easy and fast to code

Astrobytes: trictrac: I agree. Stilgart: Yes it is indeed.

MSmits: this seems complicated at first glance

trictrac: not so much, you have full information on cards of coop players and they give you partial information on your cards @ each turn

trictrac: a dilema @ each turn, give information to coop player, play a card to create fireworks or discard a card with no information on it ?

MSmits: no i dont mean it's too complicated to understand. I just mean, complicated to make a good bot

MSmits: I made connect 4 in a few hours or so

MSmits: and it's a pretty strong bot already. Never been that quick before

Westicles: Yeah, but your whole life has been building up to that :)

MSmits: lol, you're not even wrong :P

MSmits: fireworks looks very interesting

MSmits: still not getting it though

MSmits: lemme reread it a few times

jthemphill: @MSmits "I mean it suffers from the same problem as other simple board game multis"

Is the problem just the effectiveness of MCTS?

MSmits: no, I should not have said "problem", it's more like "problems" multiple. It varies per game, but mostly it's a consequence of the game being simple

MSmits: it's not really mcts related

MSmits: the problem with simple games is that bots play nearly perfectly

jthemphill: ah, got it

MSmits: one mistake somewhere is going to decide how the game ends

Default avatar.png Northbeach: :poop:

MSmits: but thats only really a problem when the best players face off

MSmits: with 100 players in a board, thats usually top 10

jthemphill: what's the problem with one mistake deciding a game?

jthemphill: is it that it introduces variance?

MSmits: well bots can be relatively deterministic, especially if they are good

MSmits: what happens is that 1 bot makes the mistake in one gamestate and the other doesnt, then the other always wins

MSmits: and you get these rock paper scissors situation

MSmits: where player A always beatsB, B always beats C, C always beats A

Astrobytes: No real competition, as it were

MSmits: then whoever submits a lot, influences the board most

MSmits: and the player that is weak to this player, drops

jthemphill: is the RPS problem avoidable?

MSmits: the more complicated and random a game, the less it happens i think

jthemphill: MaRo of M:tG fame claims that all unsolved games have an RPS meta

MSmits: oh and another thing

MSmits: if the game has a fixed start, opening books will be quite good in simple games

jthemphill: otherwise everyone would just adopt the "best" strat

MSmits: well to some degree I suppose

MSmits: but not every game is the same like that

MSmits: uttt barely has a RPS

jthemphill: i've heard people here say that uttt is mostly about writing the fastest code you can rather than thinking through heuristics - is that why you say it barely has an RPS?

MSmits: the fact that there are relatively few heuristics that work is a good reason it has little RPS

jthemphill: got it

Stilgart: RPS ?

MSmits: rock paper scissors

MSmits: player A beat B, B beat C, C beat A

MSmits: whoever submits, decides the order on the leaderboard

MSmits: aka, submit spam is effective

Stilgart: aka, CG

Stilgart: got it :(

MSmits: yes but not for every game the same

Astrobytes: :smirk:

MSmits: in uttt submit spam doesnt work very well

Stilgart: what ?!

Westicles: That's why the optims are the best thing here

Stilgart: on bad days, my rank is multiplied by 2

Stilgart: at UTTT

MSmits: thats not because of RPS

MSmits: thats just random

MSmits: at least, it could be, i did not research your case

Stilgart: why not RPS ?

MSmits: because the top 10-30 in uttt is almost exactly the same strength

MSmits: so 1 extra lost or won game can change your rank dramatically

Stilgart: how you use your random is a strat

MSmits: thats not RPS

Stilgart: but you ar eright

MSmits: no i mean, the fact that you win or lose is random

MSmits: against similarly ranked players

Stilgart: the issue is more about balande

Stilgart: balance*

MSmits: yes p1 vs p2

MSmits: uttt would be sooo much better with steal

jthemphill: steal?

jthemphill: is that a variant?

Astrobytes: The SDK awaits you MSmits...

MSmits: p2 has the choice of taking over p1's move

jthemphill: whoa

MSmits: so p1 plays the best move

MSmits: p2 will stea lit

jthemphill: oh to mitigate p1 advantage

MSmits: yes

Astrobytes: Yep.

MSmits: so p1 plays a balanced move

MSmits: and the game gets interesting

MSmits: and it's no longer "p1 always wins"

Stilgart: do we know what these moves are in uttt ?

jthemphill: maybe it incentivizes opening books more? p1 wants to play an offbeat move that they've studied

MSmits: i can find out fairly easily, but some are near 50% yeah

MSmits: top board, center square maybe

Default avatar.png NinjaFrenchman_e492:

MSmits: or top board, corner

Stilgart: MSmits: but my computer suffers enough by compiling electron :)

Default avatar.png NinjaFrenchman_e492: I have an error with putStrLn can someone help me pls?

MSmits: jthemphill well yeah but someone will figure this out and other players will just copy their starting move

Stilgart: wow, some haskell error

Default avatar.png NinjaFrenchman_e492: yea :/

MSmits: jthemphill other than that opening books are not very effective in uttt

Default avatar.png NinjaFrenchman_e492: No instance for (Num String)

       arising from a use of ‘loss_calculator’

MSmits: especially if it will have 15 starts with the steal option

Stilgart: putStrLn $ loss_calculator $ read input

Stilgart: i guess...

Default avatar.png NinjaFrenchman_e492: putStrLn $ (loss_calculator input) the error is caused by this line

Stilgart: my guess is that input is a string

DomiKo: For the first time ever I got exactly the same score as the boss, and I'm second...

Default avatar.png NinjaFrenchman_e492: read input doesnt work

MSmits: Stilgart what is electron?

Stilgart: you might want to get read of the stupid(est among stupid) default code

Stilgart: and use this instead

Astrobytes: It's most likely less DomiKo, the display is truncated

Stilgart: input <- readLn :: IO Int

Stilgart: MSmits: no idea... but vscode is made of it

jthemphill: @NinjaFrenchman_e492 you probably need to call `show` to transform a Num into a String

MSmits: ohh ok


MSmits: everything is made of electrons :P

Stilgart: took several hours to be build :(

Default avatar.png NinjaFrenchman_e492: i did but it still gives an error

Stilgart: so it was the other way around

Stilgart: putStrLn -> print ?

jthemphill: @MSmits Electron is a UI toolkit that's basically just the Chromium browser. It lets you write native apps with JS/HTML

MSmits: ahh ok

Stilgart: (sounds strange, though)

Default avatar.png NinjaFrenchman_e492: idk

Stilgart: we might need to see all the main function

Default avatar.png NinjaFrenchman_e492: this is the proble if you have the time to take a look at it

jthemphill: @NinjaFrenchman_e492 Maybe putStrLn (show (loss_calculator input))

Stilgart: but again, get rid of the default code

Stilgart: using it is at best a nightmare

MSmits: Astrobytes you think it would be a good idea to add UTTT with steal in the SDK>

MSmits: or were you kidding about that?

Stilgart: for multis, it is even impossible

Default avatar.png NinjaFrenchman_e492: putStrLn $ show $ loss_calculator input this does not work

Westicles: Haskell eh? Did you add the usual Peano contruction?


jthemphill: @NinjaFrenchman_e492 don't put two dollar signs on the same line

jthemphill: start by nesting parens until it compiles, then switch to point-free if you want to be stylish

Stilgart: what a poor day :(

Default avatar.png NinjaFrenchman_e492: dont even get started on that :D

Default avatar.png NinjaFrenchman_e492: thank for the help :)

DomiKo: Wow so sad that Bit Runner didn't get much more attention

DomiKo: That game is so cool

MSmits: it got a lot of attention actually

MSmits: but it's quite a hard game

MSmits: they had a mini-contest on release

MSmits: which re curse won with a neural network

MSmits: I didn't even get out of the "gold" league (the one right before the highest). I admit I gave up soon, but not without trying a lot of things

DomiKo: I would guess that every bot in wood 1 is NN

MSmits: nah

MSmits: people got in without them

DomiKo: It's only 5 of them

MSmits: at the end of the contet only re curse had a NN in wood 1 I think, maybe people wrote more later on

DomiKo: ohhh

MSmits: the boss of wood 2 is a normal bot

MSmits: it's just pretty good

MSmits: I should say really good, pb4 wrote it

DomiKo: That game is similar to CSB, but hmmm

MSmits: it was actually inspired by CSB

DomiKo: but that small circle

DomiKo: is so much fun

MSmits: yeah

MSmits: my problem was I didn't know what to eval

DomiKo: that idea is so clever

DomiKo: and that's interesting

MSmits: i am guessing there are a few more games you havent tried that are interesting :)

DomiKo: If I remember correctly, someone in Fantastic Bits made a "template" where you have to write only eval.

DomiKo: That could work here too

MSmits: that was csb, but maybe FB as well

MSmits: yeah, but that's basically the only thing i dont need, a template :P

MSmits: but for others sure.

DomiKo: yeah

DomiKo: In hard games that's the problem

MSmits: oh right, it would fix the hard part

DomiKo: people would write something cool, but that take a lof of time

MSmits: I think illedan may have written something for bit runner?

MSmits: at least he did a video?

DomiKo: I don't know :/

DomiKo: "i am guessing there are a few more games you havent tried that are interesting "

MSmits: well we have so many

DomiKo: I would even say that a lot of them

MSmits: yeah i guess it depends on your preferences

MSmits: also some games have serious problems with balance and such, but are still interesting to code a bot for

MSmits: you just wont have a reliable leaderboard

MSmits: or it just looks cool to see your bot work

DomiKo: Some games are so nice to watch

MSmits: for example, locam has gotten a lot of hate for parts of it, but i enjoyed it for about 2 weeks

MSmits: and it looks good

DomiKo: I hate Code of Kutulu

DomiKo: Leaderboard is so random

MSmits: hmm it's ok, but it's nasty to code a sim for, it's a looooot of work

DomiKo: but It's nice to watch

MSmits: it's fairly random, but the top is not completely unreliable

MSmits: blasterpoard won the contest and is still up there

MSmits: I beat illedan by less than 0.01 rating at the contest (invisible decimal). Was a nervewracking recalc :)

DomiKo: It's relatively easy to write a good bot, but hard to master it

MSmits: yea

DomiKo: So often I'm impressed how much people could master games here

MSmits: do you mean how many people or to what degree they master it?

DomiKo: Both

MSmits: well competition really drives quality

MSmits: if you look at who participates, there are some seriously good competitors

DomiKo: And it's still running

DomiKo: yeah

MSmits: we even have some famous competitors sometimes

MSmits: sometimes this guy joins:

DomiKo: A*Craft

DomiKo: I believe

MSmits: he won A*craft yeah

MSmits: but we beat his bot at code a la mode (though i doubt he gave a serious try)

DomiKo: But I beat him in go karts ;)

MSmits: go karts?

DomiKo: go-karts

DomiKo: Like in real world

DomiKo: :sweat_smile:

MSmits: wait, do you mean you karted against him?

DomiKo: yeah

MSmits: haha

MSmits: thats awesome

struct: I had no idea that the writer of the bitboard pdf that is shared here was yavalath creator

MSmits: oh i seem to remember that struct,

MSmits: i did notice

DomiKo: "bitboard pdf that is shared" ?


DomiKo: O.o

DomiKo: I didn't notice too

MSmits: think i exhausted that one by now, but I should keep checking that pdf when i do new games


struct: Might be interesting to read

MSmits: will check it out

MSmits: i hope one of these days I can find a fully featured and easy to understand parameter tuning program

MSmits: with TD learning

MSmits: I am too lazy to completely figure it out myself

struct: Also in that pdf he mentions 4 games that are here

struct: othello, yavalath, connect 4, breakthrough

MSmits: nice

MSmits: when i have the time, i'll try to see if i can work something out for breakthrough

MSmits: thats the one game in your list i really fail at

MSmits: though my non-booked othello could be improved as well

JLukeSkywalker: is the server dying for anyone else? tried to clash and took it like 10 minutes to verify a non-looping answer

karliso: Why is hypersonic dead? I think 1x1 is as good as it gets for a game.

struct: it isnt always 1vs1

struct: Also having 50+ copy pasted bots from rank 3 on contest doenst help much

karliso: Did I imply it is 1x1?

DomiKo: "Also having 50+ copy pasted bots from rank 3 on contest doenst help much" He pasted the code?

Default avatar.png zhoubou: JLukeSkywalker I am also experiencing this. It almost always happens around this time.

struct: yes, code is public DomiKo

struct: sorry karliso but is what i understood from the 1x1 part of your message

DomiKo: that's sad :(

karliso: struct I see, well I mentioned 1x1 specifically because it has other parts that are not as good (1x1x1).

MSmits: yeah thats a flaw of HS

MSmits: it is an otherwise interesting game though

MSmits: and the shared code can be beaten

MSmits: plenty of people rank above the gith bots

DomiKo: He is current in 65 place, so not that high

MSmits: also HS is an ex-contest game. They are almost all dead, all the time

MSmits: the fact that some people still start HS and make bots there, is actually a good sign

struct: Yeah, you can beat the shared bot

MSmits: most multis are entirely ignored

struct: The rank starts around ~10-20

MSmits: yeah it's like 50-100 identical bots

MSmits: more or less

MSmits: so when you get past them, your rank goes up very quickly

DomiKo: Yeah we can see there

DomiKo: There isn't really traffic

struct: Also most of them dont even bothered to remove the N ms

DomiKo: They don't know how lmao

MSmits: there doesnt really have to be traffic. The nice thing about CG is that you can play asynchronously. You can beat a 2 year old bot if you want

MSmits: and if you all want to work on the same multi, there's usually a new one thats popular, or an old one that came back

struct: good thing about shared bot is that you can run brutal tester against it

struct: so faster games

MSmits: you mean as opposed to cg bench

struct: yeah

MSmits: true

struct: bench you have to wait 20 sec

MSmits: it also stresses the server

MSmits: better do it locally when you can

karliso: yeah, but HS doesn't feel like typical contest game.

MSmits: hmm well it was a long time ago, before i was on CG

MSmits: my first one was code royale

MSmits: btw what did you think about my idea to add steal option to uttt karliso?

MSmits: i think it's not enough to make a new contribution for, so it's probably not gonna happen, but i do think it would improve the game a lort

MSmits: lot

karliso: exactly

karliso: well, idk about improving

MSmits: it would stop p1 from always winning

MSmits: there might be other issues with uttt, but this is the biggest one

MSmits: you might not even need the double swapped games anymore

MSmits: assuming there is at least 1 balanced move

karliso: yeah, idk

struct: I got asked by an user

MSmits: I am assuming you also ran a meta mcts program or similar, so you've seen some moves are way more balanced

struct: if I could port it and make the 1st move random

struct: and remove the current draw rule

MSmits: nah, random would be bad

karliso: I have not run any meta mcts

MSmits: ohh ok

MSmits: you hardcoded moves by hand on your own then?

MSmits: i mean when you still had a book?

MSmits: that's brilliant karliso

karliso: yeah, they were not necessarily good moves

MSmits: they were fairly hard to beat, not bad moves at all

MSmits: re curse *did* use a meta mcts to hard code and i beat his with the same effort

MSmits: struct what draw rule do you mean?

struct: having more squares won that the opponent

struct: only win condition should be 3 in a row

MSmits: allright, but if you remove that the game would be worse

MSmits: there would be more draws

MSmits: because it's relatively easy to block 3 in a row

MSmits: but not easy to also get equal number of won boards

MSmits: if you did a steal version and kept the rest the same, there would be few draws and p1 and p2 would both win often

karliso: 1st move random makes most sense, it would give game more depth as everyone is playing 4 4

MSmits: well

MSmits: it would be less balanced then

MSmits: because a lucky start may still give you the win

MSmits: and p1 is still favored A LOT

MSmits: most starts are favored to p1

DomiKo: random position and play two games

DomiKo: one as P1 and one as P2

MSmits: steal is better for balance

MSmits: and gives less draws

MSmits: draws as win both players win 1 game with swap

MSmits: like it is now

karliso: exactly, but even if random each move I don't see how it would become less balanced.

MSmits: it would not become less balanced

MSmits: but it is less balanced than a version with steal

MSmits: because with steal, p1 is *forced* to pick the most balanced starting move

MSmits: he has to, or p2 will steal it

MSmits: so out of the 15 starts, the best one is chosen

MSmits: the one with near 50% winrate

MSmits: 4 4 has near 70% winrate for most bots

MSmits: in your case 100% even

MSmits: other starts have 55-60% and there are 1 or 2 that are near 50%

MSmits: there is currently a connect4 contribution with exactly the same problem

MSmits: I ran a meta mcts to test:


MSmits: creator implemented steal and now we all start with the corner move, because it is most balanced

karliso: I will just say that I like the idea of random 1st move. It would enrich game with many more types of positions.

MSmits: I agree with games being more varied and interesting yes

karliso: Maybe connect4 can also do random 1st move?

karliso: Less hardcoding.. more depth..

MSmits: there are only 5 starting moves

karliso: Still :)

MSmits: I can hardcode the entire game no matter what

MSmits: I can fit around 200k moves in codesize

karliso: Can they not make the board larger? :D

MSmits: they did

MSmits: it's not solved this way

MSmits: but it's reasonably close to it

MSmits: if you took a month and a threadripper, you could do it i think

MSmits: traditional is 6x7, this is 7x9

MSmits: when a game is that close to being solved

MSmits: bots play nearly perfectly

MSmits: if the balance is off, its disastrous

MSmits: that's why the steal

MSmits: uttt is much further from being solved

MSmits: so it being off balance is less of a problem (yet still a problem)

MSmits: also, compare it with yavalath. It has extreme branching with 61 choices, yet the game is solved without steal

MSmits: some games just need it

MSmits: gonna go sleep, gn all

proogrmr: gn

Kitkat260: hello

NesteruS: Hi guys! Check my new CoC music puzzle, please!

Default avatar.png Annihilannic: trying to do coders strike back but the game replay videos don't seem to be playing, is it just me?

z64555: First Code4Life, not Code vs. Zombies. Before and After? #conspiracy_theories

z64555: wait, no. don't make a channel for that

No_one...: ello

Westicles: Junior high? For reals?

PatrickMcGinnisII: I know a 13 yr old designing and printing 3d models and lasercutting ... its insane man

PatrickMcGinnisII: well I was doing 8-bit asm @ 11

No_one...: wdym junior high for reals?

No_one...: Im 10

No_one...: :)

No_one...: altho i am in junior high

No_one...: but junior high is pretty normal for a programmer ngl

z64555: I think that was when I was messing around with BASIC on a C128 acquired from a garage sale

Westicles: That is a great age when you are highly gifted. When you get older, the world usually catches up

No_one...: :>

PatrickMcGinnisII: z80 was fun

PatrickMcGinnisII: kids today will never know the struggle

z64555: Walking to school, up hill, in the snow, both ways, huh?

Westicles: Never listen to a gen Xer complain. That was the absolute peak best time before or since to grow up

PatrickMcGinnisII: depends on the year. We were poor as sh*t in the 70s.

Westicles: Yeah, but I bet you could go outside on your own for hours at a time without parents breathing down your neck

z64555: really depends on the individual case. shouldn't make a generalization

PatrickMcGinnisII: My kid won't go outside.

PatrickMcGinnisII: In 79' I used the neighbors computer (that they didn't know how to use), I wrote code ON actual paper. smh.

PatrickMcGinnisII: Westicles u aint wrong