Chat:World/2021-08-15

From CG community
Jump to navigation Jump to search

michaellan: a question for those who use another client to view the CodinGame chat: how can I start/view Private Messages with another user?

michaellan: Do I need to know their numeric ID?

Default avatar.png ABC[]: Hi~ o(* ̄▽ ̄*)ブ

BlaiseEbuth: /msg pseudo

michaellan: what's the pseudo mean?

BlaiseEbuth: *nick

michaellan: ok; did you get a message from me just now, I did "/msg BlaiseEbuth just testing" but it showed up on my own status console

BlaiseEbuth: Na. /msg nick open a chat with nick, don't put your message behind

michaellan: I see. I think it worked

michaellan: thanks

michaellan: wow, it took several WEEKS for Di_Masta to write his visualization tool

michaellan: I'm gonna probably have to make my visualizer a lot more sophisticated for Mars Lander

eulerscheZahl: visuals really help to understand what's going on and spot bugs more easily

MiyamuraIzumi: 19 on CoC wow

ProCoder03: are JS the only way to write visualizers are can we write them in any other language ??

eulerscheZahl: any language

ProCoder03: any easy framework for beginners to begin with in .NET ??

ProCoder03: I am new to this visualizing topic !!

eulerscheZahl: System.Drawing does the job

eulerscheZahl: System.Drawing.Common for .net Core

ProCoder03: ohhh.. Okay :thumbsup:

eulerscheZahl: https://www.codingame.com/playgrounds/53705/contest-tools-and-workflow/debugging small code snippet that I used for a previous contest

eulerscheZahl: https://www.codingame.com/forum/t/ocean-of-code-feedback-strategies/175885/8 and how it looked like

ProCoder03: Thanks a lot !!!!

michaellan: Oh yeah I saw that GIF, fantastic job with that

michaellan: also, the strategy of drawing all candidate points and removing them as they went... I read about that years ago on a BoardGameGeek thread.

michaellan: I will try to dig it up now. the guy who discovered it said it ruined Captain Sonar for him :(

michaellan: Also, I had a question that I keep thinking about but forgetting to ask. Is it actually possible to have your bot run iterations of some algorithm / perform some computational work while waiting for your opponent to make their move?

michaellan: like after you print your move but before you receive next turn input

jacek: no

jacek: your process is suspended

michaellan: ah

michaellan: :rage:

michaellan: why are there so many CG tutorials for GA but not for SA

Westicles: SA is too slow

Default avatar.png Shivay: anyone say where is trivia bot

michaellan: aw... now im so confused

michaellan: re-Curse (dont want to ping him) told me SA was more worthwhile than GA

Westicles: Tricky autistic wording... I think he hates both

michaellan: alrighty :cry:

michaellan: I think SA is simpler for me to understand but there are more tutorials for GA... so the solution is to learn both

Westicles: SA is awesome for offline optimization where you have time, but rarely is it useful in 50ms scenarious

Westicles: scenarios

ProCoder03: whats an SA ??

ProCoder03: semantic analysis or ??

ProCoder03: Can we use .NET 5 System.Drawing in Linux ??

ProCoder03: Anyone ??

eulerscheZahl: simulated annealing

ProCoder03: ohhh...

eulerscheZahl: and yes about the Drawing

eulerscheZahl: you have to import System.Drawing.Common

ProCoder03: Thanks @eulerscheZahl

bmacho: draw here on CG?

eulerscheZahl: offline

eulerscheZahl: i linked it a bit above already: https://www.codingame.com/forum/t/ocean-of-code-feedback-strategies/175885/8

eulerscheZahl: btw there is one game that supports drawing online: https://www.codingame.com/replay/539734373 you have to enable it in the viewer settings

EdwinJagger: I keep getting shortest code on clash of the code

EdwinJagger: does anyone else experience this?

eulerscheZahl: modes are selected randomly

EdwinJagger: interesting...

EdwinJagger: i get shortest code the most

eulerscheZahl: i don't have any statistics on what mode is the most common among contributions

juice0: i'm fairly certain out of my clashes, shortest was the rarest

-Gamma-: opposite for me

EdwinJagger: when i first started, it seemed random

EdwinJagger: but recently it's mostly shortest mode for me

Default avatar.png Maxim251: http://chat.codingame.com/pastebin/ec55893f-8489-42fa-beec-c25236956c68

Default avatar.png Maxim251: Because of DennisVash, now other peoples are reusing codes, what DennisVash stored in his github page, and they copy and paste solutions and they are gathering points for free,

Default avatar.png Maxim251: where other peoples including me, are hard working on coding to get real achievement not always with high points,

Default avatar.png Maxim251: but that work is priceless, and when I am wondering how other peoples are able get on codingame so big level using so many languages,

bmacho: yay my first win in clash

Default avatar.png Maxim251: even if they don't have idea how the code works, it make me crease. Where I work hard on 1 language trying to brake few levels higher, other peoples ere even not using brain and they are on master level, Tha'ts unfair!. And fustrated

bmacho: and not even a trophy or something for it

Default avatar.png Maxim251: Because of that peoples, my ranking is lower then I should have.

Default avatar.png Maxim251: Few times I see code copied one from another, I was thinking, wow, this two guys was thinking so simmilar way that they write almost exact same code, now I see that they dig on github and just do copy paste.

Default avatar.png Maxim251: and on ranking they jump to grand master, where i work for mentor for almost a year

Q12: solving puzzles has no affect on your RANK, just on your PROGRESSION, which cannot be affected by someone else.

Default avatar.png Maxim251: Only what make me happy is Clash of Code, there they cant cheat :D

Default avatar.png Maxim251: Yeah, https://www.codingame.com/profile/82cadb4735c16364b4979205c954ec051734841

Default avatar.png Maxim251: on his page when I see achievements and gold level... wrrr

Default avatar.png Maxim251: and ranking rookie...Thats have no sense

Default avatar.png Maxim251: like my progression looks more like normal, equivalent to my level.

Default avatar.png Maxim251: #Q12 there are codes to games where peoples for free are jumping on ranking very high.

Default avatar.png Maxim251: #Q12 imagine how high You will be on ranking, if somebody else will not use copy paste code, it make me angry if I work hard and my ranking is lowered, because of somebody who cheat.. ;/

darthinvader666: why tho

Q12: As I can see he is publishing the solutions to the practice puzzles only, which have no effect on the RANK, as I said before

darthinvader666: why does dennisvash have to ruin it

darthinvader666: oh hes not

darthinvader666: ok

Default avatar.png Maxim251: he have gold level, I dont, and I feel to be an idiot when bronze level make me a problem

Default avatar.png Maxim251: I want also find my first job on programing, and I work hard to write code of my one, but how I can compare with others if some of them are using copy and paste code?

Uljahn: paricipate in an online contest

Uljahn: levels and ranks are here for gamification purposes and have no real value

darkhorse64: If you really want to improve, do bot programming/ optimization puzzles. You will have fun and learn a lot

ProCoder03: yeah i second that !!

Default avatar.png Maxim251: I use on java now one of the code, language on witch I never play, I did that code exam, and copy paste. That game is "The last crusaid 3" Nd now its pops up rank others solutions, what happened, I am ranking up solutions what I did copied, exact this same code, then how I can rank that solutions if 2, 3 or 6 guys have exact same code?

darkhorse64: There also a few puzzles worth practicing for education purposes: floodfill, breadth first search. You can pass ranking when you see copy/paste code

Default avatar.png Maxim251: IFrom last year, I did cheat only once, when I didnt know how figureout the solution, but because I want find job in my language, and I start learning code in C++ in last year, I try do everything my self. I am proud that i get to that place where I am now. And I know only C++

darkhorse64: On a personal note, don't copy/paste. You are only harming yourself: you learn nothing and deprive yourself of the joy of achieving something

Uljahn: agreed

ProCoder03: Wait why do even accuse others of cheating, it doesn't matter abt others till you are learning something and having fun

Default avatar.png Maxim251: Thats why I am so angry, that someone else have so much points, so big level, and admiring that person thinking, wow, this guy is so good in finding solutions,

darkhorse64: There are some people that elevate c/p to an industrial level reaching top 20

ProCoder03: Just see the cheaters, they are gonna be gurus or grandmaster for few weeks!!

Default avatar.png Maxim251: and then finding out, that he use copy paste just for fun, and probably He get job, because he show on his account that he uses so many other languages...

BlaiseEbuth: lel

ProCoder03: @BlaiseEbuth aren't you a mod ??

darkhorse64: :relaxed:

BlaiseEbuth: Me a mod? Don't says nonsense...

Uljahn: just wait for the chat server to reboot...

ProCoder03: but i remember seeing you as a mod few days ago, that's why....

jacek: he was a div then

ProCoder03: div ???

BlaiseEbuth: int

ProCoder03: !!

t3qnee: hi, i know the all basics of python but i can't even complete easiest quests. What are you guy's suggestions.

jacek: try easiest puzzle - onboarding, descent, temperatures, horse racing

Default avatar.png Shivay: guys i forgot how to go to trivia bot anyone can say

BlaiseEbuth: What is trivia bot?

Westicles: You also forgot trivia bot?

BlaiseEbuth: It seems so... :/

jacek: trivia bot?

jacek: what do you say, Automaton2000

Automaton2000: you should try to have a chance to look at the game

Default avatar.png borrel: @t3qnee also research the puzzle tags, they will guide you to a basic algorithem

jacek: like 5% or dissapointment

Rob022: Use windows 98 like pros

Default avatar.png Coder_noob001: https://www.codingame.com/clashofcode/clash/19167399cc518bf045215c95ccb303383b7ccf8

Default avatar.png TheOneCode: is my code somwhere collected?

jacek: it is saved once you played it or submitted

jacek: in the history

Default avatar.png Coder_noob001: Where can i find which test case my code havent passed?

eulerscheZahl: do you mean validators? still in the context of clash of code?

BlaiseEbuth: Context? There's no such thing here...

michaellan: Maxim251: high level, low rank = doing lots of practice puzzles but not doing competitive multiplayer activities

michaellan: low level, high rank (these are the people that are OP) are the ones who are gods at AI/optim

michaellan: and obviously high level and high rank are OP too

jacek: oO

michaellan: hi jacek

Default avatar.png Maxim251: Yes, I am practising, because for each game I am learning something, also I am training my self to get pattern for good programing.

Default avatar.png Maxim251: And train brain for problem solving issues .

michaellan: well

michaellan: i would say the practice puzzles dont teach the same skills as in the bot programming, for example

BlaiseEbuth: Ponies happen

michaellan: also... is the reason why GA is faster than SA something to do with AVX/SSE? like parallelizing the members of the population in some way

michaellan: i guess i have to bite the bullet and learn GA

DR_IQWDJ: algorithm branch on the main page bronze sertification is kinda too hard for what it represents. the developer "who has mastered fundamentals" would have a hard time trying to solve puzzle of the week

michaellan: Lol, this puzzle of the week just happens to be bot programming

michaellan: normally thats not the case

DR_IQWDJ: just as every other week ive been checking it

michaellan: well, depends on your perspective on what fundamentals means

michaellan: but i think you're just bikeshedding here

DR_IQWDJ: from certification " variables loops conditions"

michaellan: yeah i dislike the wording used on those certifications

Sumit-coder: hi anyone up

DR_IQWDJ: well that is true

Default avatar.png Maxim251: Like You see on my account, each game what I play, I get skills, that owned skills are from sometimes from weeks of thinking about problem. For each practiced game I am proud to get new skill. That's occupied from hard work, in my case.

DR_IQWDJ: gotta learn that minimax thing sometime i guess

xxd: i suggest you learn MCTS instead

michaellan: Maxim251: that's great

michaellan: focus on your own progress :)

DR_IQWDJ: okay thanks for directions

Default avatar.png Maxim251: what is MCTS, sometimes I forget that shortcuts

Scarfield: Monte Carlo Tree Search

Uljahn: xxd: i guess SA has only temperature as a parameter while GA has population size, mutation rates, crossover logic and selection algorithms, but GA could converge faster than SA given optimal parameters

Default avatar.png Maxim251: But how I could compare to others?

michaellan: Uljahn: yeah but those other parameters are the very things that intimidate me going into this

michaellan: i guess i'll figure it out

Default avatar.png Maxim251: Oh yeah, 2 days ago helped me friend to explain how mechanics works on search tree, I did disighn my own using vector, because I have more then 2 branches to do, and then I did. And Even my code is not so greate, I am happy of that position what I have now

Default avatar.png Maxim251: I have score of 18.64, place is 2,410 and my ranking is now at 977th/2,334, thats quite and resonable place for me

xxd: for which?

Default avatar.png Maxim251: ultimate ticTacToe

xxd: nice

xxd: what approach did you use?

xxd: what type of search

Default avatar.png Maxim251: code is not fully working but I achieved to work " Tree search" and now I know how to create one. And my idea to use vector rather pointers was good idea.

Default avatar.png Maxim251: any way it works.

Sumit-coder: how you guys are soo good at this

YurkovAS: mcts + bitboards: great for uttt

Default avatar.png Maxim251: My code is not finish, I get to big mess now, but I use montecarlo tree search from second move from players, and used MAX to chouse the best move for me,

BlaiseEbuth: A lot of child sacrifices.

Scarfield: bribes

Uljahn: investing a lot of time ofc

BlaiseEbuth: And goat

AntiSquid: i thought that's only if you want to be a politician BlaiseEbuth

Default avatar.png Maxim251: because of mess in my program, I did not implemented MIN for opponent, and sometimes my program is using the worst move from opponent to block him, this way I loose, because opponent are chousing the best move... :P

BlaiseEbuth: The goat sacrifices?

AntiSquid: the former

Scarfield: thats bribes

BlaiseEbuth: childs?

Scarfield: i've heard its a big thing in politics

DR_IQWDJ: what is the easier puzzle or game to start learning tree search?

Default avatar.png JBM: MCTS simple exercise ofc

BlaiseEbuth: :rofl:

Scarfield: Bandas or breakthrough have fairly simple game mechanics

AntiSquid: yes blaise

eulerscheZahl: breakthrough + MCTS? does that work well?

BlaiseEbuth: Can works for everything if you're clear in what you ask.

Default avatar.png Maxim251: #DR_IQWDJ montecarlo tree search, on wood level You have 1 board, I was learning that my self. Try not to pass that level , because later You will have 9 boards and it will be really hard.

jacek: people have some success with mcts in breakthrough, yes

eulerscheZahl: more than with minimax?

BlaiseEbuth: They probably sacrified some children...

AntiSquid: is it a bad idea ? breakthrough and mcts ? if yes why ?

Scarfield: mcts ept probably(?)

eulerscheZahl: MCTS shines when it's hard for a human to find any eval

AntiSquid: and wasn't MCSmiTs using mcts in breakthrough ?

eulerscheZahl: for breakthrough I see how to eval a state

eulerscheZahl: i don't know what players are using

eulerscheZahl: except for the NN at the top

jacek: maybe pure mcts wouldnt work, then its ept

martinpapa69: what is an ept ?

eulerscheZahl: ept?

AntiSquid: i messed up my MCTS in breakthrough i am sure . my beamsearch worked 10x better Q_Q

AntiSquid: even ept was worse

Uljahn: early playout termination?

jacek: for bt you can easily use 'extended' solver, using bitboard to quickly solve positions few plies earlier

YurkovAS: i'm use mcts (ept) in breakthrough

martinpapa69: you terminate bad rollouts based on some heuristics ?

jacek: originally in ept instead of playing rollout to the end of game, you play for few moves and use eval to determine the winner

jacek: most people here go dont rollout at all and use eval directly

martinpapa69: ahh, ok

AntiSquid: but still random moves right ? not heuristic selection for moves

AntiSquid: for the "few moves" in ept i mean

jacek: could be either. mcts comes with many variations and enhancements

xxd: ._.

AntiSquid: _

xxd: wonder if its possible to eval a UTTT state

eulerscheZahl: there are some minimax bots in legend

AntiSquid: how good are you at UTTT ?

xxd: very bad

AntiSquid: then you can't do it

xxd: alrighty

xxd: procrastinating on writing a MCTS solver

AntiSquid: then find something else to do, meanwhile have a lovely day

xxd: you too

xxd: what's a good starting puzzle for GA? I keep seeing the one where a bot tries to find the goal string but that just feels a bit lame to me

xxd: i guess i'll code that one up anyway though

eulerscheZahl: i haven't written a single GA here on CodinGame yet :thinking:

eulerscheZahl: search race might be a good candidate

xxd: wow, really?

xxd: how about SA?

eulerscheZahl: no

xxd: what did you use for Mars Lander optim?

Default avatar.png borrel: game of drones?

xxd: dang...

eulerscheZahl: monte carlo with heuristics

xxd: o

TobiasA: safe

Default avatar.png borrel: (check the blog)

eulerscheZahl: heuristics to land and get a 100% correct at least

eulerscheZahl: then random search to change a few tiny bits of my sequence at a time

xxd: hmm ok

xxd: sequence being a list of (angle, thrust) for each move?

eulerscheZahl: yes

TobiasA: how long is the sequence?

eulerscheZahl: until the landing

eulerscheZahl: the published puzzle solutions can give you a few idea about a good heuristic. you can even try several heuristics to keep the best

Swyfti: which puzzle is this for?

Default avatar.png StevenV: ML

MiyamuraIzumi: Hello guys

xxd: hi

TobiasA: Hi

BlaiseEbuth: ML-insta-swifty-bot incoming!

MiyamuraIzumi: I don't understand what you mean BlaiseEbuth

xxd: swyfti got code-busted someone elses code for codebusters

xxd: code-busted for using someone elses*

eulerscheZahl: code-busted for codebusters? how fitting

Default avatar.png sheaaaaaaaaa: no

Swyfti: hey

Swyfti: i just realized that was an unintended pun

TobiasA: :open_mouth:

Swyfti: by the way this is not daniel speaking

Swyfti: NOT

TobiasA: who is daniel?

Swyfti: this annoying person who copied code on my account

TobiasA: reeeeaaaally?

Swyfti: yes

TobiasA: :o

Swyfti: but now he is no mroe

Astrobytes: Yeah. And my left leg can sing opera.

Swyfti: left leg can sing opera

eulerscheZahl: do you sell tickets Astrobytes?

Astrobytes: :D

Swyfti: really?

Swyfti: i mean he does have a penguin father

Astrobytes: It's about as likely as your 'explanation' for being a big cheater.

Swyfti: woah dude

Swyfti: i was not joking

TobiasA: :expressionless:

TobiasA: reeeaaally?

Swyfti: its always very annoying when this kind of stuff happens

Swyfti: first time this kind of stuff happened to me actually

Astrobytes: If I had a penny for the amount of times I've heard this excuse I could retire.

Swyfti: yes, i have heard about that stuff

TobiasA: :o

TobiasA: you have?

Swyfti: of course!

Swyfti: so this kind of stuff has happened on codingame before?

TobiasA: what do you think about it?

Swyfti: me?

TobiasA: yea

Swyfti: im just annoyed out of my mind

TobiasA: teehee:joy:

eulerscheZahl: if that was this daniel how submitted your codebusters bot - then how about resubmitting your own and getting a rank that you deserve?

Swyfti: that sounds good-

Swyfti: reset me on coders strike back please?

eulerscheZahl: not possible

Swyfti: yes, coders strike back

Swyfti: oh

Swyfti: oops

Swyfti: then reset me on codebusters

Astrobytes: copy that one too did he

Swyfti: no

Swyfti: there was legit an entire tutorial on coders strike back

Swyfti: the logic is straightfoward enough

TobiasA: how did you do yours?

eulerscheZahl: https://www.codingame.com/share-replay/575424162 interesting messages, aren't they?

BlaiseEbuth: Another one \o/

Astrobytes: lol

TobiasA: well damn

BlaiseEbuth: Bad bad bad daniel... :(

Astrobytes: That Daniel guy sure has been busy

TobiasA: mhm

jacek: oh my

Swyfti: i mainly do clash of code on this account

Swyfti: just saying

Astrobytes: "It wasn't me! A big boy did it and ran away!"

Swyfti: lol

Swyfti: that is funny because of personal experiences

Swyfti: guess im doing clash of code for the rest of my time

TobiasA: why?

Swyfti: cause its fun

reCurse: Easier to copy paste too

Swyfti: actually no

Swyfti: not in shortest mdoe

Swyfti: not in shortest

TobiasA: a cup of copy with pasta

Swyfti: copypasta

Swyfti: very funny

Astrobytes: Almost as funny as your excuse.

Swyfti: oh my that way, for coders strike back, i just used many if else statements to control my speed

TobiasA: why did it take you that long to answer:expressionless:

Swyfti: because there were many other questions to answer...

TobiasA: yet that's all you could come up with

Swyfti: i mean its very obvious, is it not?

TobiasA: so you decided to answer mine last

TobiasA: how bias

Swyfti: yes

Swyfti: sorry

TobiasA: hm i just realised that that was the only question to be answered:expressionless:

TobiasA: forgiveness not granted

Swyfti: acutally no

Swyfti: there where questions previously in the chat.

Swyfti: some sentences are indirect questions

TobiasA: you really like excuses don't you?:expressionless:

Swyfti: me?

Swyfti: excuses are everywhere

Swyfti: for every person

TobiasA: preach

Swyfti: preach means pray by the way what do you mean by that

TobiasA: sorry i was just answering one of the many questions in the chat

TobiasA: :rolling_eyes:

Swyfti: preach

Swyfti: is a verb

Swyfti: answers are usually explanatory sentences

TobiasA: preach

Swyfti: exactly

TobiasA: word

Swyfti: its word for word

TobiasA: facts

Swyfti: ghosts in the cell and coders strike back where the only two bot programming i did

TobiasA: what happened to code busters

TobiasA: ?

BlaiseEbuth: And why have you a bot in mean max? :p

Swyfti: i do

Astrobytes: No. That and Mean Max were 'Daniel'.

eulerscheZahl: that was daniel, you have to pay attention

eulerscheZahl: thanks Astrobytes

Astrobytes: :D

Swyfti: i really want you guys to reset my progress on all other contest

eulerscheZahl: that's not possible

Astrobytes: It isn't possible.

BlaiseEbuth: same

Swyfti: oh rip :(

eulerscheZahl: (staff could do it but we won't bother them)

TobiasA: sheesh

Astrobytes: Delete account.

BlaiseEbuth: "So sad"

Swyfti: guess i can redeem myself in the fall 2021 contest

eulerscheZahl: rumors say you can't

eulerscheZahl: escape contest :(

Swyfti: what rumors?

TobiasA: noooooooooooooooooo

jacek: huh?

eulerscheZahl: we don't know the format of the next contest yet

Astrobytes: You could redeem yourself by disabling the 'Daniel' bots.

Swyfti: that is a good idea

Swyfti: i already did

Astrobytes: (redeem yourself *a little*)

BlaiseEbuth: You'll probably have to pay to get someone else solution during FC21...

Swyfti: i know

BlaiseEbuth: :3

TobiasA: then i assume you got your money ready

eulerscheZahl: no, they are on github during the contest too

reCurse: Easier to redeem yourself by not being a clown

Swyfti: really?

Swyfti: well look at this

eulerscheZahl: but at the end CG does a plagiarism check and removes all of them

Astrobytes: what reCurse said.

Swyfti: thats right

Swyfti: so....

jacek: better to be a troll than clown eh

Swyfti: wanna see something?

TobiasA: word

eulerscheZahl: yes. that's why i'm watching asterix and obelix right now

BlaiseEbuth: Keep your dick in your pants! :scream:

Astrobytes: thin line jacek, a thin line.

Swyfti: https://github.com/kKEeWwon-2314/Connect-4-AI

Swyfti: i am not a person

Swyfti: i am a team

TobiasA: what is your goal?

Swyfti: or i should say, a part of a team

BlaiseEbuth: Oh... So keep your dicks in your pants! :scream:

Swyfti: good advice blaise

TobiasA: :joy:

xxd: what is that repo supposed to even mean

Swyfti: a connect 4 minimax ai made by us

Swyfti: its not copied...

Swyfti: SUPRISE

Swyfti: WOW

Swyfti: ITS NOT COPIED

Swyfti: impossible.

Astrobytes: Clowns++

Swyfti: um

BlaiseEbuth: 1 -> Prove that's not a copy. 2 -> That doesn't erase the fact you copied on other multis...

TobiasA: team=[clown() for i in range( num_of_clowns)]

BlaiseEbuth: 3 -> That's a Ku Klux Klan repo

xxd: i highly doubt this account "Swyfti" is shared between people

Astrobytes: Kicks are warnings Swyfti, it means you're on thin ice.

reCurse: Go get your attention fix elsewhere

Swyfti: where tho? at least i need a place to go

reCurse: I don't care

reCurse: Not here

Swyfti: not here

BlaiseEbuth: "Hey hey! How's your attention? Fix it" someone will say.

Swyfti: alright then...

Swyfti: guess i will see you at the end

Swyfti: i mark my words

TobiasA: :grin:

Astrobytes: Just do one and stop chatting crap.

BlaiseEbuth: Las t judgement

BlaiseEbuth: ?

TobiasA: waaahaha

TobiasA: he actually said "mark my words"

Default avatar.png idknow: hello

Default avatar.png idknow: how are you doing guys

TobiasA: good

TobiasA: and how do you do?

BlaiseEbuth: haggis, isn't it?

EdwinJagger: it'd be cool if we can choose which gamemode in clash of code to play

Default avatar.png idknow: yo boys

Default avatar.png idknow: coding is life

TobiasA: is it

BlaiseEbuth: copying is better

xxd: pasting is best

TobiasA: cup of copy and pasta together

oxydowe: pasting is "Senior developer"

xxd: EdwinJagger: yeah, like three different lobbies: Shortest, fastest, reverse

xxd: that would be fun

xxd: i would die to have reverse-only clashes

xxd: those are my fav

EdwinJagger: @xxd yup exactly

EdwinJagger: like i keep getting shortest mode but I wanted to do more fastest mode

EdwinJagger: also how do you tag here?

xxd: you just say the name

xxd: (accidental tagging is an issue)

EdwinJagger: xxd I see cool

xxd: what are you up to?

EdwinJagger: xxd: i guess like that... but yeah do you know if we can request that?

xxd: i think its a common request but im not sure they're gonna change it

EdwinJagger: lol doing another shortest mode... i keep getting this mode a lot

xxd: i think CG wants you to get better at it ;)

EdwinJagger: hahahaha

xxd: what language do you use on clashes?

eulerscheZahl: you can choose the clash mode when you launch a private clash. but then you have to find the participants yourself

EdwinJagger: just python for now

EdwinJagger: might get into ruby but i don't know it yet

xxd: python is decent for shortest mode

xxd: if you focus on golfing python you'll learn cool tricks about the language

EdwinJagger: i've just done so much of it now

EdwinJagger: i'd rather do reverse mode because sometimes you really have to think about it

EdwinJagger: or even fastest mode

TobiasA: how do i make it that numbers from 0-2 are considered 0 then 3-5 are considered 1 and so on without if statements

TobiasA: question mark

eulerscheZahl: n/3

TobiasA: i see

TobiasA: that was too obvious

TobiasA: now i am embarrased

TobiasA: so i have to round up?

eulerscheZahl: floot. in python it is n//3

eulerscheZahl: floor*

TobiasA: c++

TobiasA: oh yea nvm

TobiasA: i forgot about floor

BlaiseEbuth: floor is lava

TobiasA: jeez i am dumber than usual today

TobiasA: there is floor in c++ too right?

eulerscheZahl: at first i wondered if i should answer. or if that was a question for someone else just to test them

xxd: Oh yeah i had a similar question

eulerscheZahl: just do an integer division. that's always floor

xxd: If I can guarantee a uint8_t is in between 0-9, is it faster to divide it by 3 or use a switch-case with 9 cases (hardcoding the division)?

TobiasA: i was also hesitating to ask the question

eulerscheZahl: trunc actually

TobiasA: because it was probably very easy

eulerscheZahl: that's a UTTT question, isn't it xxd?

eulerscheZahl: i don't know the answer, benchmark it

eulerscheZahl: or a lookup array as a 3rd option

martinpapa69: jump instruction is generally slow

martinpapa69: (return, if else, switchcase ...)

xxd: ok gotcha

xxd: yeah eulerscheZahl, was a shower thought haha

xxd: pondering bot programming in the shower O_O

Astrobytes: That's common, don't worry.

eulerscheZahl: branches are fine. conditional branches are the slow thing

xxd: when are branches not conditional

eulerscheZahl: during contests you'll lose a lot of sleep if you are only half as invested as some of us are

eulerscheZahl: while (true)

eulerscheZahl: always calling a subroutine

eulerscheZahl: (that is not inlined)

xxd: i havent done a real contest yet, i'm signed up for Fall 2021

xxd: it better not be an escape room

TobiasA: that would be sad

xxd: I see, that makes sense thanks

Astrobytes: We live in hope.

BlaiseEbuth: Escape from CG before it's too late

darkhorse64: We lived in fear, now we will live in hop

eulerscheZahl: https://www.codingame.com/forum/t/solo-contests/1114/3 for context

eulerscheZahl: and Illedan even liked that post :rage:

darkhorse64: hope

Astrobytes: aw, I was looking forward to hopping and giving my wrists a workout :D

eulerscheZahl: you would totally lose such a contest

xxd: :rofl;

Astrobytes: I would.

Astrobytes: (wrists == ankles for those who don't know)

eulerscheZahl: huh?

xxd: astrobytes types with his feet

eulerscheZahl: i always thought wrist = hand, ankle = foot

BlaiseEbuth: if there is a test with cloves of garlic, you're screwed

Astrobytes: It's a joke between myself and darkhorse.

Astrobytes: BlaiseEbuth: Not if I'm careful ;)

darkhorse64: Astrobytes: :nerd:

martinpapa69: there should be an error message for exceeding memory limit...

Default avatar.png sheaaaaaaaaa: wtf

Default avatar.png sheaaaaaaaaa: i just got all testcases but still got 0%

xxd: sounds like you hardcoded

xxd: 0%?

Default avatar.png sheaaaaaaaaa: it was reverse and i just used elif statements

Default avatar.png sheaaaaaaaaa: does that have anything to do with it

xxd: lolz

xxd: nah, that prob just means you didnt solve it correctly

xxd: did you try refreshing the page?

xxd: sometimes its bugged

Default avatar.png sheaaaaaaaaa: im going into another game ill check in 5 mins

Astrobytes: validators != testcases

Default avatar.png sheaaaaaaaaa: yeah still 0%

Default avatar.png sheaaaaaaaaa: f

eulerscheZahl: what were the inputs + outputs you saw?

Default avatar.png sheaaaaaaaaa: its happening whenever i use if and else statements

Default avatar.png sheaaaaaaaaa: im passing all testcases but im still getting 0%

Astrobytes: are you hardcoding just for the test inputs?

Default avatar.png sheaaaaaaaaa: Yes, are you not allowed to do that

Astrobytes: You have to solve the general problem.

Astrobytes: Create a program that solves all cases.

Astrobytes: Validators are different from testcases to prevent this.

eulerscheZahl: it's obviously allowed. but it will rarely result in more than 0%

Astrobytes: ^

xxd: are a lot of the top ranking players only active during contest seasons?

TobiasA: dunno

TobiasA: any ideas on how i should represent the grid for uttt?

Uljahn: you mean other than bitboards?

xxd: I use 10 uint16_t's

xxd: 9 for small 1 for big

TobiasA: do you put the 9 in an array or you join them together?

xxd: yeah they're in an array

xxd: i think i'd go insane otherwise

TobiasA: true

xxd: like its theoretically possible to do it with 2 int64's or something

xxd: since its 9 * 10 total bits i guess

xxd: oh wait

xxd: i sorta lied

TobiasA: but how do you switch between big and small?

xxd: when bitboarding, you have two ints, one for each player

xxd: and for the big board, i have a third int, for tied squares

xxd: TobiasA: what do you mean by switch?

Uljahn: if i recall correctly MSmits used titboards https://stackoverflow.com/questions/53708165/bitboard-to-titboard-ternary-bitboard-conversion

TobiasA: wha?

TobiasA: the hell

martinpapa69: hmm good name choice

Astrobytes: only for some parts

xxd: lol

xxd: "tritboards" sounds more like it

Astrobytes: (the SFW version is tritboards)

TobiasA: i mean for small board the coordinates are from 0-2 and big 0-9

TobiasA: so how do convert it

TobiasA: no how do you use it in general

Uljahn: modulo and integer division?

xxd: ahaha i mentioned earlier i bothered to write out some conversion functions

TobiasA: how did you do it?

Astrobytes: most probably with modulo and integer division as Uljahn said

xxd: yeah; https://clbin.com/fu47C

TobiasA: oh

xxd: oh theres some wack debugging comments in there

xxd: get_move is for displaying my output, get_child is for interpreting the input

TobiasA: BIGBOI:joy:

xxd: im pretty sure my get_child function can be optimized somehow but its not that bad

xxd: and i think i can avoid using loops for get_move somehow

xxd: CBA to do it; these functions only get called <100 times a game

TobiasA: thanks i think i get it now

xxd: yeah, you can probably do better than me in any case

xxd: i look forward to seeing your UTTT bot :)

TobiasA: i look forward to seeing my UTTT bot too:sweat_smile:

xxd: Does the first-turn=1-second rule apply for all challenges?

xxd: a lot of games only have saying "<100ms per turn"

xxd: I am wondering if the first turn rule is implicitly there or not

chinmaya: hii guys

chinmaya: where are you from

chinmaya: ?

chinmaya: ?

TobiasA: xxd i don't think so

chinmaya: tobisia

chinmaya: where are you from?

TobiasA: hover over my profile

Astrobytes: Yeah, first turn <= 1 s for multis

xxd: how about for optims?

xxd: or does optim go under multis

Astrobytes: Not 100% sure tbh

xxd: heh. if so, i should change up my CvZ code, although i dont know how much an MC can take advantage of 900ms extra on first turn

Astrobytes: Don't think it's the same. USer contributed multis may differ though.

martinpapa69: its so stupid that nn bots play exactly the same game in a 200 round game 3 times in a row

reCurse: That's why friends don't let friends make games with fixed starts

MSmits: what could possibly be wrong with fixed starts? :grin:

MSmits: martinpapa69, this is preventable by adding some randomness. jace k's bots tend to do this.

MSmits: as long as the randomness doesn't lead to significantly worse gameplay it should be fine

martinpapa69: ye ive thought about that

martinpapa69: randomizing the order of chilren nodes

MSmits: also be careful about judging when your bot is worse. I think NN creators tend to try different versions of their bot and then keep the one that does best on the leaderboard.

MSmits: however, as you said, there is major RPS due to this determinism

MSmits: randomness removes the RPS, but also removes the advantage of selecting "best out of X" and enjoying it's deterministic winning

martinpapa69: yep

martinpapa69: my goal is to make a good alphazero framework atm, idc about the rank

MSmits: that's a nice goal

martinpapa69: it would be nice to use top players replays to make an nn based "book" somehow

Astrobytes: you should definitely talk to MSmits :D

martinpapa69: ye I've heard he's a fan of...books

Astrobytes: :grin:

MSmits: books yeah!

MSmits: I'm working on what you are saying martinpapa69 only better. At any time, the current top only samples a subset of good lines of play. You want all of them

MSmits: my new meta mcts has 10 million games so far, in only a few days

MSmits: it has no problems getting the tree down to a "solved" state at 36 seeds so it should eventually incorporate all of the top players trees i think

MSmits: of course, after that, whatever bot that is using the book, is on its own for the rest of the 36 seeds. My 57 GB endgame book will not fit in a bot. I want to train a nn for this part

martinpapa69: the problem with that is your book contains a lot of states, that never played

martinpapa69: your nn will underfit imo

MSmits: not necessarily. It depends on how you select the data

MSmits: you could play "games' in the book. Giving better moves a higher chance of selection

martinpapa69: ye if you have a good technique (alpha zero? ) yo ucan solve this

MSmits: from the book games, you can train a nn

martinpapa69: sure

martinpapa69: i thought you want to train with the raw booik

MSmits: which one do you mean

MSmits: the meta mcts one or the endgame book

martinpapa69: the 57gb one

MSmits: oh, yes, at first i want to try the raw book and i fully expect it to be worse than the process i just described with book-games

MSmits: but i have to start somewhere

MSmits: this is also a way to ease me into nn's. It's not really my thing so i don't want to jump into azero

MSmits: not any time soon anyways

martinpapa69: ye its a good idea not to start with az. i worked with nns before, but i had 2 failed attampets before with az

MSmits: ah I see

MSmits: all i did was a lot of reading + I converted the xor example to a NN for TTT (not uttt)

MSmits: it worked quite well, high accuracy and only lost 1% vs random

martinpapa69: cool

MSmits: then i converted it to use tf + keras

MSmits: sooo much easier

martinpapa69: another good nn-ai practice is dqn

MSmits: i did nornal q-learning, but not that

MSmits: normal/simple

michaellan: are you talking about chess?

michaellan: what does an alphazero framework mean

MSmits: not chess no

MSmits: only re curse is doing chess i think

MSmits: we're talking about using NN for simpler games

MSmits: an azero framework is an automated interconnected "system" for self-play, training and testing your bot, then converting it to something usable here on CG

michaellan: wow, fancy.

michaellan: that sounds fun

michaellan: i think i read about an AZ framework on some github repo but I cant recall what it was

martinpapa69: I've been playing with it for more than a month now. can confirm, its fun

MSmits: as martinpapa69 mentioned though, better not start with azero. Start with simple stuff that motivates you to keep going

MSmits: otherwise you're either going to quit because of repeated failure, or you're gonna get something to work, but you have no idea why because you copied a gith repo

martinpapa69: ye keeping your dopamine level up when trying new stuff is important

xxd: :sunglasses:

xxd: i dont think im gonna even be able to dabble with NN in the near future even

xxd: i have a long ways to go

michaellan: can a same parent mate with itself in GA? lol

michaellan: my intution says yes so i'm gonna code it up that way for now

MSmits: sure why not

michaellan: might take longer to converge?

michaellan: possibly

MSmits: preventing it would maybe cause a slowdown which also may make it take longer

michaellan: ah that is true too

Astrobytes: the next generation is made from their children though... so...

michaellan: hmm... in the Mars Lander article it says "(choosing a second parent is repeated until the chosen chromosome is different from the first parent). "

MSmits: I guess it depends on the size of the population. With a smaller population, a bigger fraction will be like that

Astrobytes: Oh right, the best 2

MSmits: I guess with a bigger population, it would also cheap to check this, as it's just another if/else that is almost never true

Astrobytes: It's still the best child from the generation + the second best

michaellan: what with the best/second best? isn't probabilities supposed to be divided proportionally according to their fitnesses?

MSmits: no idea actually. I thought it was just random

Astrobytes: You were choosing parents, 2 of those I assume, chosen based on fitness and difference from one another

Astrobytes: It can be anything

MSmits: sounds like this is one of those things that's trial and error. Lots of hyperparameters to try

Astrobytes: Personally speaking, if this is your first time doing GA, I'd create a flat MC to some depth, then introduce mutation, then incorporate features as and when you think you need them

Astrobytes: It is MSmits. It has an evaluation function.

michaellan: how does mutation work with flat MC

Astrobytes: Mutate your best solution.

-rudos-: hi

Astrobytes: According to whatever metric you like.

michaellan: but...

michaellan: doesnt MC just generate random paths each time?

Astrobytes: Yes, keep your best and mutate it

michaellan: what does "mutate it" mean?

Astrobytes: You can see how this becomes a population of solutions at some point

michaellan: is this basically simulated annealing without the "take if worse if temperature is high enough" part?

Astrobytes: Change something about it, thrust, angle, etc

michaellan: what do i do with the mutated one? run it again?

MSmits: mutate is a small change to your set of features. From what I've heard, some implementations don't use any mutation at all

Astrobytes: Compare the mutated version with your current best solution, if better, keep it, or keep a pool of them

michaellan: do i still do the thing where i just make random playouts?

michaellan: i _think_ i get it, at any rate, thanks guys

Astrobytes: Yes it's still stochastic in that sense

PeterBishop: Hello all - I am trying 'Target Firing' in Go and curious why is only takes the one fmt.Printlln statement as input. what am I missing?

RightHandElf: What's the confusion? You have an encounter against multiple ships and you have to provide one result.

PeterBishop: maybe too new to Go and this interface. back to Go tutorial and back to this later then.

theycallmedavid: Is there a way to see the error prints in validation replays?

sheaaaaaaaaa: how are you graded on fastest

michaellan: by whoever is fastest

sheaaaaaaaaa: oh crap i said the wrong thing again

sheaaaaaaaaa: i meant on reverse

michaellan: theycallmedavid: if you could, you could just print out all the input given and deduce test cases

sheaaaaaaaaa: sorry

michaellan: ah, reverse is graded by time only, so its a fastest minus the problem statement

michaellan: my GA works on the classic "guess the string" puzzle

michaellan: lets go

michaellan: its gonna be a long way to getting mars lander though :(

Default avatar.png dmin: this site is starting to become really fun for me

Default avatar.png dmin: great hobby

michaellan: awesome!

theycallmedavid: @xxd right, forgot about that

theycallmedavid: I fail the last validation step in "The Bridge". No idea why. I calculate the chain of commands on first turn. Validation step says timeout. In IDE, all first turns end in less than 1 ms

xxd: do you have some check in place to make sure it doesnt take more than a second?

theycallmedavid: No

xxd: i think its just a really big hidden test

xxd: i havent tried the problem so i cant say

michaellan: hmm, the physics sim doesnt actually seem that bad for ML

xxd: i assume the ship is a point object?

michaellan: i've only taken physics 1 :cry:

xxd: chat is dead

Wontonimo: no it isn't

Default avatar.png eggeggwe: it is still alive

Wontonimo: yeah

Wontonimo: hovering https://www.codingame.com/replay/575812169

DrQuarius: is there a way to get back into an active clash if you lost the incognito window it was in and hence the url?

DrQuarius: (computer crashed during a clash :( )

Wontonimo: don't know. Hey, have you tried something other than clashes? Like crashes? Like the Mars Lander?

Wontonimo: try to navigate a lander like this https://www.codingame.com/replay/575811954

DrQuarius: crash was due to battery issue, not the website. just wondering if there's a way to find clashes you're currently in somehow on the nav bar

Wontonimo: nope, not that i know of. A better solution would be to play a multi bot battle or a challenge on this website

DrQuarius: that's not a solution, that's just not playing clash of code, haha. Thanks anyway.

Wontonimo: that sounds like a fine solution to me. How about a nice game of ultimate tic tac toe? https://www.codingame.com/multiplayer/bot-programming/tic-tac-toe

Default avatar.png Retroblaze: bonjour

xxd: Lol, love it wontonimo

xxd: man that High ground replay is just so hot

xxd: I'll see how my GA compares, if i can get this dastardly simulation to work :)

Wontonimo: :D

Default avatar.png Ltzylw: are you guys are real humans?

RightHandElf: nope

Default avatar.png Ltzylw: hmm

Default avatar.png Ltzylw: many robots?

xxd: tw

xxd: two

xxd: Automaton2000: are you a robot?

Automaton2000: i just do it for a day

Default avatar.png Ltzylw: wow

Default avatar.png Ltzylw: i'm new here

Default avatar.png Ltzylw: i find it interesting for me to code and communicate with you

Default avatar.png Ltzylw: hhh

xxd: it is indeed very interesting

Wontonimo: like crazy

Default avatar.png Ltzylw: a little question

Wontonimo: yes, i do like it also

Default avatar.png Ltzylw: where are you from?

Default avatar.png Ltzylw: america?

xxd: it says in my profile

Wontonimo: no. hover over your icon, and you'll see our flags

Default avatar.png xero72: Hey

Default avatar.png xero72: anyone here really good at code golf

xxd: i guess im decent at it in a select few languages

RightHandElf: I know about 'I=input' in python, does that count?

Default avatar.png xero72: haha

xxd: do you know about while x:*x,a=x[::-1];print(end=a) though

Default avatar.png Ltzylw: ok thanks

RightHandElf: I know that that slices x in reverse

RightHandElf: among other things

Wontonimo: i don't know that one xxd. nice

RightHandElf: oh I missed the 'while' on the first line lmao

Default avatar.png Ltzylw: you ren hui shuo zhong wen ma

xxd: that prints out alternating ends of a string

xxd: that was my clash solution for a clash i did yesterday

xxd: wo hui shuo zhong wen

RightHandElf: *x functioning like *args to capture all but the last element of x[::-1]

RightHandElf: nice

xxd: dan wo de mu yu shi ying wen

Default avatar.png Ltzylw: hahaha

Default avatar.png Ltzylw: zhong wen shui ping bu cuo

xxd: zhen mei shen me

xxd: anyway lets keep it english here

Default avatar.png Ltzylw: agree

Default avatar.png Ltzylw: i'm a rookie

Default avatar.png Ltzylw: still in university

Default avatar.png Ltzylw: but i 'm learing software programming

Default avatar.png thealmightyjason: gan ni nian

xxd: i'm trying to wean myself off of CoC

Wontonimo: cold turkey, pull the plug, hard stop

Wontonimo: you can do it! I believe in you xxd!

xxd: or i could go up a couple places and get an extra, singular, CodinPoint

xxd: :cry:

Wontonimo: or play another multi and gain 100

Wontonimo: and have fun

xxd: I think the reason why CoC is very appealing to a lot of people is because it is low commitment