Chat:World/2021-03-04

From CG community
Jump to navigation Jump to search

RGAM: Is there an option to always share your clash code automatically?

Default avatar.png Binary_Sky: I did find an option for that in the settings but it still asks me if i want to share but ive asked ather people and they said it automaticly shares mines

FlyHead: has anyone ever experienced a test case being wrong? i mean, i know it sounds dumb, i usually blame myself for incorrectness...

FlyHead: this time i figured it out... it's kind've a trick question... *falls on sword*

AeQ: i don't understand why these bot programming challenges have a 'neural network' tag on them... how can we train a neural network if we have to depend on codingame to run the iterations for us?

reCurse: There are quite a few neural network bots around

jacek: and you train the neural network locally, offline. there is no data leaked for bots between games

Default avatar.png ramawijaya0466: test

Menox: Is codingame loading slowly just for me or is it server sided?

Menox: I checked speedtest and I have 226mbps download so it shouldn't be caused by my internet

baguettes: 226 mbps?

derjack: it works fine for meh

Menox: yup 226

Menox: megabits

baguettes: Bits?

baguettes: Lmao

baguettes: I thought you meant btyes

baguettes: bytes*

baguettes: or you were serious

Menox: yes bits

Menox: I'm from Slovakia so there's no change I have 220MB download lol

Menox: *chance

derjack: and net speed is usually shown in bits

Menox: zeah

Menox: yeah

tutubalin: and one of the reason for that is that network byte is actually 10 bits

Default avatar.png Papaya_13: hello

Default avatar.png Papaya_13: hello world

Default avatar.png RustySconeOfWisdom_ea0e: hello

meme3: hi every one

derjack: ohai

AntiSquid: o gozaymasu

Raph_Hax0r: CodingGame is being very slow for me :/

BlaiseEbuth: Erf... Automaton2000 pedal faster !

Automaton2000: well i wanted to do some easy puzzles

BlaiseEbuth: You're the only one spending your work-time on codingame !

BlaiseEbuth: Shame !

Yasser: xD

JLukeSkywalker: im spending work time here too

JLukeSkywalker: its 'training'

AntiSquid: tric

AntiSquid: trictrac ?

Default avatar.png Devil_Java: where are you from?

BlaiseEbuth: My living room.

BlaiseEbuth: For now.

AntiSquid: there's a bug in your game @_@ trictrac

BlaiseEbuth: Lel, classic

AntiSquid: are you saying there isn't ?

KelvinAndHubbles: theres a bug in every game

AntiSquid: he is not offline, how do i chase him down @_@

Astrobytes: He's most likely working, so forum. Also he'll see the ping here when he's free.

AntiSquid: this is urgent !

BlaiseEbuth: :scream: call the lv3 desk immediately !

AntiSquid: 5

AntiSquid: level 5

Astrobytes: Out of interest, what's the bug? Are you losing? :P (j/k)

AntiSquid: bugs can cause one to lose when they shouldn't

AntiSquid: didn't check if the bug alone would make a difference, but it's annoying

darkhorse64: You got a new game before the current deck is exhausted and while there are errors remaining ?

AntiSquid: assumptions ?

darkhorse64: I believe that I have seen it once but it was very late and I did not kept the replay

darkhorse64: keep

AntiSquid: wouldn't be rank so high with that bug, not now not earlier

AntiSquid: and talking about a different bug

AntiSquid: but need to see what tric says

jacek: who approved that ~

BlaiseEbuth: Nobody approved your ~

AntiSquid: one would say they exploit the bug if they weren't so low ranked, right Automaton2000 ?

Automaton2000: that's what i see in the morning

Wontonimo: the sun never sets on Automaton2000

Automaton2000: i should probably start with a simple heuristic

AntiSquid: or maybe i should exploit it? then it gets fixed sooner ?

darkhorse64: The westicles way ?

AntiSquid: yes

jacek: oh my

AntiSquid: why is an approver still in wood2 ? i take offence

darkhorse64: double hulk in fireworks !!

BlaiseEbuth: Exploiting bugs is an attempt to their dignity and fundamental rights.

AntiSquid: it's freedom of expression and speech

**BlaiseEbuth will not answer and just directly check the reaching of the Godwin point. :ballot_box_with_check:

Wontonimo: bugs are just features that are misunderstood. Use that feature for its full potential

BlaiseEbuth: If you want to be rich, don't sell features. Sell bugs and the patchs.

darkhorse64: Use the feature and get #1

Astrobytes: *undocumented features

AntiSquid: trying bug avoidance first

BlaiseEbuth: HCF!

AntiSquid: not very good, maybe bug exploit is best

AntiSquid: maybe some of the top 3-4 already use it

BlaiseEbuth: Poor poor bugs... :(

darkhorse64: Not me or unconsciouly

darkhorse64: unconsciously

darkhorse64: hard to say, hard to type

AntiSquid: it's ok, adding to my TODO list, still only half way done with this bot @_@

jacek: oO

BlaiseEbuth: Oo

AntiSquid: it's that time when i need a rewrite and i simply say no

darkhorse64: OO

Andrew-H: oo

darkhorse64: :nerd:

Default avatar.png ZeSole_Coder: o_O

Notgoodatcoding5: o-o

darkhorse64: 0-0-0

Default avatar.png deoignition: Php >>> Html >>> Python >>> ASM >>> Java >>> JavaScript

MSmits: hey darkhorse64 did you avx clobber already?

MSmits: this seems to be my move generation, barring any possible bugs:

MSmits: uint64_t rightMoves = (pB << 1) & oppB & NOT_RIGHT_EDGE; uint64_t leftMoves = (pB >> 1) & oppB & NOT_LEFT_EDGE; uint64_t upMoves = (pB << 8) & oppB; uint64_t downMoves = (pB >> 8) & oppB;

MSmits: bah wheres autopastebin when you need it

darkhorse64: Only when counting the number of moves

MSmits: seems so simple

MSmits: barely worth doing avx for

MSmits: why not, for random rollout, just do a rnd 0-3 and pick a direction

darkhorse64: But it does not improve performance

MSmits: then just generate for that direction

BlaiseEbuth: Why do you shift emojis ?

MSmits: it's a pro tactic BlaiseEbuth

BlaiseEbuth: :o

MSmits: get a bit more experience and i will explain

darkhorse64: In the end, all directions are not available

MSmits: yes, but you can solve that by keeping a list of numbers 0-3 and just reduce that

MSmits: until it hits one that works

MSmits: i think i did that for bandas

MSmits: not sure what for

MSmits: in any case simd seems overkill here

darkhorse64: for bandas, all moves are always valid

MSmits: ohh right i remember now

MSmits: it was oware

MSmits: when i still had random rollout

MSmits: some moves are invalid

MSmits: because they dont leave moves for opponent

MSmits: you dont know until you try

MSmits: anyways, i dont think i will bother with avx here, unless i can later use it for some math stuff

MSmits: the math stuff will go in expansion phase I think. You can prune some moves and solve some games early I think

darkhorse64: rn, my clobber bot has a low sim count 26K. Move gen is slow. I translate my masks into start,end pairs

MSmits: mmh why not do the movegeneration in 4 phases, then iterate over your move origin uint64_t with _builtin_ctzl

MSmits: you know the shift direction then

MSmits: it's a constant within 1 phase

MSmits: doing the right moves, it's all << 1 so the move will be "origin bit + 1"

MSmits: then for down moves it's << 8 and bit index + 8

MSmits: it might still be slow, especially early game because you'll be making 100+ children

darkhorse64: Yes, you did that for bt. I have reused generic code where the MCTS does not know anything from the game

MSmits: ah right i shared that.

MSmits: yeah you tend to use generic. I rewrite a lot for each bot, doing things differently each time

MSmits: it has up and down sides

darkhorse64: Sometimes abstraction really gets in your way but it allows for a quick'n dirty bot

MSmits: yeah that it does

MSmits: are you willing to dive into the math for this game?

MSmits: I really think it will be the difference between top x and the players below that

MSmits: it is in D&B

KelvinAndHubbles: is there a difference between Tron bot wood and bronze league? Thought the multiopponents was gonna be introduced, might just have to wait to leauge up

MSmits: not sure when that happens KelvinAndHubbles

darkhorse64: I should really write a boss for Clobber but I am stuck on Fireworks. For Clobber, the meta seems to count isolated islands, solve them with tables if possible. Tbh, I did the bot for happy few.

MSmits: happy few?

MSmits: is this a team i am not aware of

MSmits: good teamname

darkhorse64: You already are in the team

MSmits: oo

MSmits: The Happy Few

jacek: oh my

MSmits: not sure you're happy enough jacek

MSmits: but we'll take derjack

darkhorse64: The guys really dedicated to searching

MSmits: ahh ok

Scarfield: did you find what you have been looking for then?

MSmits: who has been looking for what?

Scarfield: "dedicated to searching"

darkhorse64: What matters in not finding but searching

MSmits: yes, it's the journey, not the destination

jacek: thats why we love cycles

MSmits: hey jacek, did you get nr 1 at othello because of the randomness of your bot and old johns counterbooking?

darkhorse64: Writing my second multi really taught all I have been doing wrong for the first, even the bot itself

jacek: MSmits huh? i havent touched othello in some time

jacek: also, clobber and endgames https://project.dke.maastrichtuniversity.nl/games/files/msc/Claessen_thesis.pdf

MSmits: I think old john counterbooked re curse and therefore pushed you to 1

MSmits: you're almost impossible to counterbook because of the random bot

MSmits: well... it's doable, i did it but its not fun

MSmits: yeah i have that paper

darkhorse64: ^

MSmits: it has a lot of useful information, but not easy to understand

jacek: did you pay for it

MSmits: just like the D&B papers

MSmits: no, i just did that once :P

MSmits: and it was a crap paper

jacek: in clobber you still can have not crappy generic mcts bot

jacek: in d&b its more like all or nothing

MSmits: yes the math is more important in D&B

MSmits: but thats because there are otherwise no features to eval

MSmits: all the features come from the math

MSmits: Clobber has some stuff you can eval

MSmits: and it makes sense to random playout, it will converge to more favorable positions

MSmits: this is because in clobber, you each have your own pieces

MSmits: in D&B there are just lines that dont belong to anyone

jacek: like some other certain game :thinking:

MSmits: :notepad_spiral: :soccer:

MSmits: you still have a goal though

MSmits: so it's a partisan game

MSmits: like clobber

MSmits: D&B is not partisan

MSmits: there's nothing about the board that is different for either player. The only difference is whos turn it is and how many points each player has

MSmits: and the points have no effect on what the best move is, you can use a scoreless state

MSmits: so it's basically just... who's turn it is. That's all you can eval

KelvinAndHubbles: Any tips when you're #1 only right behind the boss in a league? Just keep versing him and try to improve your code?

MSmits: counter the boss specifically

jacek: spam submit, exhaust him

MSmits: if you get 50+% winrate

MSmits: then spam submit

MSmits: every player that beats you will get promoted

Default avatar.png VIgoroth34: are there any programs that help people learn c# on here?

MSmits: this site is mostly for practice

jacek: woah, chessfield advanced to league

MSmits: it gives you incentive to google stuff

KelvinAndHubbles: fair enough, me fighting him is pretty 50 50 with the boss

MSmits: make it a little better

MSmits: and you're golden

Default avatar.png VIgoroth34: alright thank you

MSmits: also there might be a p1 advantage

MSmits: so if you're 50-50 as p1, you might be 40-60 as p2

MSmits: then you're actually weaker

MSmits: if you get 50% WR as p1 in uttt, you're actually much weaker4

Scarfield: "woah" a little too surprised i think :p

MSmits: maybe it was a sarcastic woah

MSmits: jacek does a lot of sarcasm, so take it as a compliment

jacek: do I?

Scarfield: xD

MSmits: don't you?

Default avatar.png UnnamedCodinGamer: MSmits, nice idea with the direction picking in clobber

MSmits: maybe I need to review all your messages and reprocess them

Scarfield: but i insist on being offended:smiling_imp:

jacek: :no_mouth:

MSmits: UnnamedCodinGamer cool, i will need to finish a bot and try it out myself

Default avatar.png UnnamedCodinGamer: I was wondering how to optmize that

MSmits: well the most expensive part there, is the expansion phase itself, creating all the child nodes

jacek: i always generate via loop from square

MSmits: what do you mean from square?

Scarfield: have you improved you chess jachess? not checking if king in check every move and so on?

shubh-assasinzzz: how to be king in python

jacek: MSmits while (board) index = ctz(board) then xor

Scarfield: not king boa?

MSmits: ah yes, thats what i do, but for clobber i would do this 4 times

MSmits: 1 for each dir

MSmits: to be python king, one must study tiger king

jacek: Scarfield yeah, made some lookup tables. and also, my isOver() function was expensive because first i generated list of all legal moves and then checked if the list is empty

Scarfield: lol "Boa constrictor" is "king boa" directly translated from my lang

MSmits: :tiger: :crown:

MSmits: jacek, fastest would be to do create the 4x uint64_t origin boards and then or them together like a | b | c | d and then check == 0 ?

jacek: im talking chess

MSmits: oh ok

jacek: for clobber i do origin board 4fill

jacek: and check with opponents

jacek: &

MSmits: right

MSmits: it's really one of the easiest games i've seen to do move generation and move application

MSmits: dont think any other is easier

Scarfield: kewl, messed some more with my eval today and ranked up with just 1 ply eval, so it works fairly well i suppose. Next up is minmax and a number of improvements i havent tried before :)

jacek: not even 2 ply search?

jacek: MSmits amazons are also easy

Scarfield: not yet, was playing around with my eval

MSmits: with amazons you need to shoot... you get thousands of moves

MSmits: seems more complicated

MSmits: uttt is easier

jacek: well there are many moves, but bitboarding is easy

MSmits: sure thats true

MSmits: bandas/oware are hard

Scarfield: its likely way too expensive when i start to search, but thats a future problem for future me

MSmits: I am too afraid to try chess

MSmits: seems hard

jacek: many edge cases, and castling

MSmits: yeah

kovi: im also afraid to start it

Scarfield: its already the longest "bot" i have written, and no search yet xD

MSmits: the complexity is ridiculous compared to the other board games

kovi: and the knowledgebase

MSmits: checkers already feels much more complex than the other ones, but this is exponentially harder

Scarfield: yea, but its easier to see if your bot is playing well or not

MSmits: true

jacek: im very meh at chess

Scarfield: to some extent of course, my chess game is not exactly GM lvl

MSmits: I'm mediocre. Can do a solid 1400 I think

MSmits: if i had more opening knowledge i could probably get higher

jacek: mhm

Scarfield: just london all the way

MSmits: when i play chess however... i keep thinking, why am I playing this game? I should code a bot for it

MSmits: the fact that it requires you to memorize openings is even worse, as i have 5 meta mcts running in the background while playing chess :P

jacek: good luck with meta for chess960

Scarfield: the fischer random part is great, im not sure i would have tried if it was normal chess

MSmits: yeah thankfully meta is not an option

MSmits: well it would actually be possible if not for codesize limits

kovi: not exact moves, but still opening strat

MSmits: also exact moves, it's just a matter of calculation time and storage

MSmits: but it wont fit in CG limits

kovi: fortunately

MSmits: ye

MSmits: also the game is much harder to write a bot for, meta mcts is not an i-win button. Without a strong bot, your meta mcts will suck

jacek: without good ending, bot sucks

jacek: just goes around

MSmits: ah yeah. Worse than checkers?

jacek: too soon to say

MSmits: you could for sure add a rook-king mate algorithm

jacek: not my bot but i had games when i had bare kings and other got 7 pieces and he couldnt checkmate

MSmits: some mate algos are easy

MSmits: but there's so many combinations that you would need a lot of code

Kellthazar: Hello, Im trying to code a simulator for the mars3 puzzle problem, but it's seems that my physics "engine" does not match with the CG's one.

Kellthazar: Initial position: X=6500m, Y=2600m

MSmits: someone have the referee for it?

Kellthazar: After applying the "15 3" command (15 degree angle, and power of 3), the coding game new position for the shuttle is x: 6480, y: 2599

MSmits: you might have the order wrong

Scarfield: the acceleration for mars lander is applied continuously, not by just adding the acc vector

Kellthazar: On my simulation is {"x":6480,"y":2597}

MSmits: changing the angle, applying the force etd.

Kellthazar: Hmmm

MSmits: what does that mean Scarfield?

MSmits: continuously/

MSmits: (in this context)

jacek: youre physician and you dont know

MSmits: thats why i added that last line :p

MSmits: I knew you were here

MSmits: i'm also not a physician

jacek: he doesnt answer. he may be too discreet

Scarfield: xD

Astrobytes: Smits MD

Default avatar.png UnnamedCodinGamer: hah

Kellthazar: So, on my algo, I applied the gravity force to the velocity vector.

MSmits: :)

Kellthazar: after i added the thrust vector

MSmits: try different orders, see if one of them matches

Kellthazar: Hmmm.. I will do that, thanks :)

darkhorse64: p = 0.5 (v+previous_v)

MSmits: there's usually a referee available

MSmits: not in this case i guess

darkhorse64: Sorry p += 0.5*(v+previous_v)

Kellthazar: why 0.5?

MSmits: you never said what p is, so it was fine

MSmits: average

MSmits: because i guess that is what Scarfield meant by continous

Kellthazar: v is the velocity?

darkhorse64: p = position, v = speed, all are floats

Scarfield: yes

Kellthazar: oh

Scarfield: i thought you were joking smitsi

MSmits: no, it just didnt fit my definition of continuous

MSmits: but i see what you mean

Scarfield: isnt that the word for it, as opposed to be discrete

MSmits: i think it's still discrete, but you make a first order correction to the error you get by working with discrete values

MSmits: by taking the average

Astrobytes: Seems legit, yep

darkhorse64: This is my code and it matches exactly ML

MSmits: yeah, thats probably the exact sim they use

MSmits: there's various ways to do this and different physics engines use different methods

darkhorse64: I think I got the relevant information from the forum

MSmits: allright back to clobber. Want to try and finish something today

Astrobytes: Oh you're doing Clobber, good man.

Astrobytes: Doesn't take long to get up and running with it.

Scarfield: no more uttt?

MSmits: doing a long running book experiment with uttt.

Astrobytes: til the next brainwave TicTacToeField

MSmits: right

Astrobytes: :)

MSmits: I'm in between waves

Scarfield: lol

Scarfield: UltiBytes

Astrobytes: heh

Scarfield: figured it out Kellthazar?

Kellthazar: @Scarfield I was afk, I'll try to change now.

Scarfield: http://chat.codingame.com/pastebin/b4f65a45-9ac6-45b1-b758-48a9b312f562

Scarfield: this is the code i used boiled down, might be more obvious :)

RGAM: Is there a way to auto share your clash automatically?

MSmits: your solution you mean?

MSmits: I think there might be, but not sure

Scarfield: you can toggle autoshare CoC solutions somewhere in your profile settings

Scarfield: "Auto publish solutions" in your settings

Scarfield: cleaned my pc ealier and found a part sitting a little loose. blissfull silence :)

RGAM: Scarfield, I did that yesterday, but it still appears the "share code" button.

RGAM: OMG Scarfield! What was this part?

Scarfield: hm no idea then, i havnt clashed in years.

Scarfield: just some empty holder, nothing that shouldnt be loose

Default avatar.png NiKala: hi

Scarfield: hey

Default avatar.png NiKala: can i join in two in two clashes at same time?

Scarfield: no idea, but why would you not just do one after the other?

Default avatar.png NiKala: i need to wait if i finished one early

Default avatar.png NiKala: )

Default avatar.png NiKala: ) ;

jacek: no

jacek: you can join new clash immediately

Default avatar.png NiKala: wow thanks

Kellthazar: Hmmm... I tried the solution proposed by darkhorse64, it's seems more accurate, but still diverge "through" the time.

Kellthazar: http://chat.codingame.com/pastebin/fc687a44-3e7a-4b55-af03-2d030b3dbc27

darkhorse64: Do you apply any truncation to your data ?

Kellthazar: Im using p5js to visualize my solution, so I adjust the coords to print on the canvas, but without change the "original" data, where all the calculation occurs. I'will review all my code to see if there any missing truncation.

Kellthazar: Anyway, thanks for the attention :)

AntiSquid: trictrac Automaton2000 AutomatonNN ? anyone home ?

Automaton2000: you are getting close to top 3

AutomatonNN: ̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤̤

AntiSquid: i was 2nd !!! Automaton2000

Automaton2000: there's a bunch of stuff

jacek: 2nd? where?

jacek: AutomatonNN is on fire

AntiSquid: fireworks

AutomatonNN: eulerscheZahl is there a way to see a lot of people so far off the contest in the contest, I am stil

jacek: :cry:

AntiSquid: depends who submits basically

AntiSquid: one night of 2nd

AntiSquid: it's ok still have plenty ideas to improve, but doing it on and off

jacek: exploiting bugs eh

AntiSquid: not yet!

AntiSquid: and it's just 1 bug i found

AntiSquid: those i am not aware of don't count

Closetron: hello world!

Default avatar.png Tuo: do any of you veterans have tips on version control of files or something for CG? one huge file gets tedious handle and spring challenge is coming :)

AntiSquid: winter is coming

Default avatar.png Tuo: winter is here! of w8 its gone

Default avatar.png Tuo: *oh

AntiSquid: always next winter to look forward to

AntiSquid: unless we enter a new ice age i guess

trictrac: AntiSquid a question ?

AntiSquid: ya wait i pm better

therealbeef: Tuo you can use multiple files and have a file save hook that cats them together and automatic sync to the IDE

Default avatar.png Tuo: how could i do this?

jacek: cats :3

therealbeef: which part of it?

Default avatar.png Tuo: eh all of it

therealbeef: Most IDEs have plugins that let you automatically run a script when you save a file

therealbeef: such a script could concatenate several files into one

therealbeef: there is a browser plugin for CG that syncs a chosen file to the web IDE

therealbeef: if all of that is unfamiliar, i'd start with that sync tool. there's documentation on CG about it

Default avatar.png Tuo: ok ty. i will try to get something together

Astrobytes: And scripts for merging files too for a few langs. C++, Java, C# and python, perhaps JS

Astrobytes: On the forum if you search ;)

therealbeef: wouldn't 'cat' work for any language?

Astrobytes: Yeah, but you have aspects of different languages that could be problematic

Astrobytes: just cating a bunch of c++ h and cpp files together isn't generally going to go too wel, for example

Astrobytes: *well

Astrobytes: that's why there's a bunch of different scripts catering to different languages (sorry for delay, was afk)

AntiSquid: https://www.codingame.com/forum/t/community-puzzle-fireworks/189112/13 input required hope people vote in favour of making fuses more useful

AntiSquid: trictrac posted it

Astrobytes: fuses == allowed errors?

AntiSquid: yes

Astrobytes: Gotcha, will take a look tomorrow

jacek: for what should i vote for?

Astrobytes: Well, I'll look now but properly look tomorrow I mean.

AntiSquid: vote Bernie 2020 jacek

trictrac: thanks AntiSquid

AntiSquid: vote for errors to not deduct points jacek

AntiSquid: lol he actually posted it

Astrobytes: Yes, that's a fair point AntiSquid and trictrac

jacek: AntiSquid edited

Astrobytes: Not sure about using 3rd fuse, it's not fatal in the real game right?

AntiSquid: 3rd fuse ends the game

Astrobytes: I reference your point that "But then late game on last round it’s still worth some times to take the risk even on 3rd error"

AntiSquid: but even that is a good play if it's last round ... you risk guessing correct card why not, more points

Astrobytes: Right, cool, gotcha

Astrobytes: Is it worth creating a private contribution (or public, whatever) to test it?

AntiSquid: trictrac's worry is the leagues, he said bad bots get promoted if the rules are too lenient

Astrobytes: Yes, this is true

Default avatar.png Tuo: My bot makes risky plays even with penalty

Default avatar.png Tuo: you just need to know when its worth it :)

AntiSquid: you don't normally get punished for it and here it's added to promote better teamplay

AntiSquid: if you're against my suggestion mention it in forums or the creator ...

Default avatar.png Tuo: i think its a nice mechanic that nobody just uses

Default avatar.png Tuo: i shall!

AntiSquid: taking risks or screwing teammates over?

Default avatar.png Tuo: taking risks

Astrobytes: It's an interesting point tbh. My gut is to go with your suggestion AntiSquid but it would have to be in the top league only I think...

AntiSquid: ya asked tric if he wants to open new league :P

AntiSquid: top 5-10 :P

AntiSquid: won't submit till then obviously

Astrobytes: Yeah, that's an option for sure. I still think it should be tested before going live though.

jacek: yeah who approves games without testing :unamused:

Astrobytes: You know AntiSquid, there is a reason that we try to thoroughly test games in the WIP/approval stage that we're interested in :P

Astrobytes: jacek knows nothing about this at all

Astrobytes: Fake news

jacek: about what

AntiSquid: wasn't here or probably too busy

Astrobytes: Exactly

Default avatar.png Tuo: the penalty might be too high. my bot only makes 1-3 risky plays per set

Default avatar.png Tuo: and it think its pretty close optimal

Astrobytes: AntiSquid it was in WIP/approval for 3+ months :D

AntiSquid: the penalty of 1 point has big impact on where you rank at the end of the game, the entire team for the round gets same score except for your -1

Astrobytes: Yeah, it seems odd to punish for that

AntiSquid: kovi is 0-0-0 penalty wrong? like in the real game?

Astrobytes: Kovi's suggestion is better. 2 might be too much though

AntiSquid: you can test Astrobytes but you might not like the final decision anyway :P

kovi: i don't know the original game

AntiSquid: hanabi is the original game

AntiSquid: well fireworks translated

AntiSquid: you have https://www.cardboardrepublic.com/wp-content/uploads/2013/12/hanabi-fuses.jpg

AntiSquid: and bomb goes off if you make too many mistakes :P

AntiSquid: it's more dramatic with those tiles

Default avatar.png Tuo: the my card expected value vs someone elses for using free error mechanic would be interesting

Astrobytes: Hm. Perhaps a Mars Lander sound should have triggered upon the fuse running out :thinking: :P

AntiSquid: :100:

Default avatar.png Tuo: as in if i should use the free possible error

kovi: yes, the meta would be even if its not riskly, let other take it with better chance

Astrobytes: FFS this is the conversation we needed in WIP!

AntiSquid: kovi you take the risk of playing a card that might be worth 5 points, if you're wrong you get punished, sure there are situations where it's a bad play and situations where the risk is much appreciated and actually best play

jacek: no time, push it to production on friday night!

Astrobytes: trictrac: how long did you wait for approval?

trictrac: 2 months

Astrobytes: Oh I thought it was 3, my mistake.

Default avatar.png Tuo: u need to consider win propability not just card value :)

AntiSquid: honestly i am more motivated to try a game when it's live, i still didn't start chess and the circle game ashketchup posted

jacek: circle game?

AntiSquid: connect 4

Astrobytes: trictrac: you can see clearly here the issues with the approval procedure on CG sometimes ;)

AntiSquid: oh and didn't start triangle one either

jacek: connect triangle?

Astrobytes: connect worlds

jacek: :crying_cat_face:

trictrac: The problem is that we are not enough to test

trictrac: I try to make all multi

AntiSquid: Tuo it's last round we have no 5s left, would you be upset if a player played any card 1/5 chance hitting the 5 ?

trictrac: but is hard work

AntiSquid: wait i mean we have 1 5 left

Astrobytes: Yes, there should be some way of showing users that x or y multi/puzzle is awaiting approval or testing.

Default avatar.png Tuo: well with current rules hes just not that smart :)

AntiSquid: multis can always be updated, no biggie, people might be busy can always upgrade visuals and everything

Default avatar.png Tuo: w8 last round player proply should know if the card is a 5

AntiSquid: Astrobytes i didn't test this connect 4 version but it might be solvable !! ... just like the other variants out there

AntiSquid: ya they should, but even if not, it's last round ?!

trictrac: Make a proposal for a multi, is an investment. So the community need to answer as fast as possible to this proposal

Astrobytes: Don't think it is AntiSquid, but ask MSmits, he ran meta MCTS on it for some time, he has the stats

Default avatar.png Tuo: last round you cant have a 1/5 change of having a 5 :)

AntiSquid: well lower, but still not always 100% sure

AntiSquid: you might not always get the hints you need

AntiSquid: you could have the 1/5 chance if nobody hinted anything since all the plays were in the other hands

Astrobytes: trictrac: It's very difficult for people to find the multis in the swamp that is the Contribution section currently. We have suggested to separate them all into clashes/puzzles/multis/solo/optim but ...

trictrac: you have right, it's hard to find them !!

AntiSquid: ya not to mention people with allergy to coc won't even look there, they might get placed on ventilators otherwise

Astrobytes: I think the only way is to repeatedly talk about it and ask for feedback in chat (discreetly of course)

Default avatar.png Tuo: y actually in theory its possible. the points dont realy matter what matters is what results in interisting bot gameplay

Default avatar.png Tuo: kovi s suggestion is good. having 3 errors might meke tahe game easier

AntiSquid: i agree with you tuo, well in that regard this is a good game because it promotes more "intuitive" algorithms, so what rules help meet that goal ?

Default avatar.png Tuo: problem with easier is that there is a LOT of luck involved so differences in bots are hard to see

trictrac: So the consensus is ?

MSmits: AntiSquid connect4 is definitely solvable, but it just hasn't been done yet afaik.

MSmits: https://tromp.github.io/c4/c4.html

MSmits: we have 9x7

MSmits: so just out of reach for the person on that website

AntiSquid: i don't know about this version, the 7 columns one on gameboardsarena is solved, which is funny

AntiSquid: red always wins

MSmits: yes but 7 columns is wayyyyy easier than 9

AntiSquid: i am guessing a similar strategy will be good

Default avatar.png Tuo: i vore for 0,1,2. its keeps the evaluating how good a risky play is in game but allows for more strategies

Astrobytes: trictrac: I'm not going to comment with any weight as my bot is not currently in the arena, but whatever changes are made should not be in the bottom league for sure

AntiSquid: is this version also best to first play middle column MSmits ?

MSmits: no, sec

MSmits: http://chat.codingame.com/pastebin/2608a7e5-1acd-4856-b371-4758d9b0b45c

Astrobytes: AntiSquid, I told you he literally has the stats :D

MSmits: 4 is middle

MSmits: 5,6,7,8 not included due to symmetry

jacek: you need to pump those numbers up

MSmits: the game has steal, so the advantage doesnt matter

MSmits: 1 is best start so far

AntiSquid: but you don't have the solved stats MSmits

Astrobytes: No one said he solved it

jacek: yet

MSmits: no, but it's getting clearer every day. I should eventually solve it

MSmits: not sure if it will take months or years though

MSmits: i dont run the most efficient setup here

Astrobytes: We're here for the long haul anyway right :P

Astrobytes: What! You just upgraded you fool :D

MSmits: basically, a "visit" is a game played, it's usually solved at depth 30-40 or so

MSmits: many nodes go near that depth alreadty

AntiSquid: MSmits your chart says #3 is best start

MSmits: yeah i did upgrade, bu it's just using 1 core

MSmits: yes, but the game has steal optin

MSmits: option

jacek: AntiSquid without a steal

MSmits: so if someone plays 3, it's gonna get stolen

Astrobytes: Fix your core usage MSmits!

AntiSquid: it's not regular connect 4 ?

MSmits: i am also running 4 other games, i like it this way :)

trictrac: Tuo, AntiSquid & Kovi, If I install : 0,-1,-2 I need to remove the 0 point rule for the third mistake

Default avatar.png Tuo: ?

MSmits: AntiSquid yes it is regular connect 4

MSmits: do you know the pie rule?

MSmits: if you played yavalath you know

AntiSquid: he means if he adds the penalty as 0 -1 -2 then the 3rd mistakes won't set your score to 0 anymore

kovi: 0 point rule just meant 2 mistakes. none risks 3rd

AntiSquid: at least we get 0 penalty for first try

MSmits: AntiSquid basically it's like this. Player 1 does a move. Player 2 gets to choose to flip colors or not. If he flips colors, he becomes player 1 basically

MSmits: so player 1 is forced to play a balanced move

AntiSquid: pie rule MSmits ? there's no such rule on gameboardarena and i don't know about the version implemented on CG

AntiSquid: there's also a version where you can rotate the board afaik so ...

MSmits: it's just a general balancing rule used in many games that have unbalanced starts

MSmits: it's not connect4 specific

Astrobytes: Ist 2 to harsh? Or it's balanced enough to work with that (assuming a positive outcome for the risk)?

Astrobytes: *Is not ist, I'm turning German!

MSmits: if you dont use pie-rule in yavalath, the entire game is solved as a win for p1 for example. Easily solved even

MSmits: (takes about an hour)

AntiSquid: astro the current version sets your points to 0, which is harsher :P

Default avatar.png Tuo: -2 should mean that u dont play ever

AntiSquid: on 3rd mistake

Default avatar.png Tuo: well pretty close

Astrobytes: Hm, yes. OK.

jacek: pinkie pie rule?

Default avatar.png Tuo: need to be 85+% sure that a good card goes

MSmits: our version of connect 4 is actually harder to solve because of pie rule... I need to solve every starting move to solve the entire game

AntiSquid: MSmits ok i understand the idea, but no i didn't encounter this in online board games

MSmits: I read about it being discussed for a connect4 tourney

jacek: not even hex?

MSmits: https://boardgamegeek.com/thread/295726/any-suggestions-making-connect-four-suitable-tourn

AntiSquid: so currently you can wreck the ladder on gameboardarena with a solver

MSmits: they discuss it here as one of the options

AntiSquid: maybe it's an option when you host a game

MSmits: yeah but whats the point, you can do the same in chess with an engine

MSmits: or any boardgame

MSmits: you dont need to solve it to beat human players

MSmits: if we play uttt together online, i can just run a bot to give me moves

AntiSquid: well my initial question was regarding the CG version

as for what's the point exploiting games?

MSmits: it's just a form of cheating is all

MSmits: in a friendly competition environment people wont do it. On a massive free for all website of course they will

AntiSquid: you were talking about the pie rule, i don't see it there, i see how it can be useful though

MSmits: oh ok yes

MSmits: it's an easy fix for imbalance

MSmits: however, it does need the existence of at least 1 balanced move

MSmits: it would make uttt a lot better too i think

AntiSquid: even without a bot, you will eventually memorize the meta

Default avatar.png Tuo: trictracc 4th mistake is the 0 points one right?

MSmits: well part of it at least yeah. I think connect 4 is simple enough that the game will get boring for experts fairly quickly

AntiSquid: just look up any chess grandmaster explaining and naming any opening and opening variation, every tiny move seems to have it's own name, it's crazy

MSmits: I know, i watched some YT channels for a few weeks

MSmits: chess channels

MSmits: agadmator :)

AntiSquid: now i have to check if magnus is still world champ

MSmits: think so

jacek: yes

MSmits: in regular chess anyway

MSmits: not speed i think

MSmits: there's 1 better

AntiSquid: 2013 until present

jacek: meth chess?

MSmits: ye

MSmits: they're all dosed up and then they play

trictrac: Tuo yes it's the 4 you have right

trictrac: and I keep this rule

Astrobytes: cheth jacek

Astrobytes: MSmits: where is your Clobber bot

MSmits: still working on move generation

jacek: ezpz

MSmits: ye i got some bug

Astrobytes: It's not that bloody hard

MSmits: it counts them right, it's 104 at start right?

Astrobytes: 112

jacek: 112

MSmits: meh, then it doesnt count them right either :p

Astrobytes: check for a shift operator roudn the wrong way. I totally did that

Astrobytes: *round

MSmits: probably

jacek: or wall masks

MSmits: got those

MSmits: but they might have bugs

Astrobytes: Yeah, check if they're roudn the right way though!

MSmits: btw, i was just afk for 2 hrs, so i basically have 1 hr into this bot, gimme some time :)

Kellthazar: darkhorse64, I think that I fixed my code thanks to your tip. :D

Astrobytes: Excuses, excuses :D

MSmits: but they're not even round

MSmits: are you sure you werent shifting with parentheses?

AntiSquid: there are 4 fuses, but the 4th tile shows you the explosion trictrac

Astrobytes: :grin:

AntiSquid: still better than having 0 points for using 3rd error i guess

AntiSquid: Once you hit error 3, you lose. In the real game. But sure whatever, let's have a 4th. :P

AntiSquid: MSmits is that your best bot version on connect 4? just curious to check the current meta

MSmits: well it has a book based off 1.5 M visits and i currently have over 2.0M. But even without book it should be the best bot.

MSmits: it took me half a day to code more or less

Astrobytes: Don't be so naive, 'best bot' hasn't been created yet, it's always a few weeks in the future :P

MSmits: yes, i mean live bot :)

MSmits: if you want to know the meta AntiSquid

MSmits: it's mcts with rollouts

MSmits: no early termination and eval, just rollouts, like uttt

MSmits: but they're a little smarter, my bot doesnt give away wins on next turn

jacek: mine is jacekmax + n-tuples

Astrobytes: And - don't forget to connect 4

MSmits: my bot never connects 4 in rollouts

jacek: should make more memes for connect4

AntiSquid: https://www.codingame.com/share-replay/531327807 this is still played a little bit like in the 7 col variant, you start on 1 but then you both build up on mid row

jacek: i believe in high level play its a stackfest in the beginning

Astrobytes: well you saw the stats

AntiSquid: maybe it's because of the pie rule ?

MSmits: goes off book on frame 0

MSmits: 10

MSmits: so everything before that is scripted (my first 5 moves)

MSmits: yeah pie rule might have that effect

MSmits: i'll show principal variation for mid game start, sec

MSmits: mid col

MSmits: http://chat.codingame.com/pastebin/83b29d32-8cc3-432a-9733-6ace31962012

AntiSquid: i bet it's still be something like mid col: red->blue->red->blue all the way to the top up until there's one slot left open, then it branches out a lot, even for this variant

MSmits: I think 3 start has something like that

MSmits: oh this was 3

MSmits: mid col is weird

MSmits: http://chat.codingame.com/pastebin/6dc445f3-d053-46e5-abcf-bdbfd43b3392

MSmits: for the full info:

MSmits: http://chat.codingame.com/pastebin/7240eb31-f311-445a-a86c-c782f8129490

MSmits: see how most moves are solved already?

AntiSquid: ok and after that part i be it builds up around the edges and tries to trap you with some fancy diagonals

AntiSquid: i bet *

MSmits: maybe, i did not dive too far into the tactics

MSmits: personally, I am just interested in seeing if i can solve this thing

AntiSquid: i looked a bit at theory too

MSmits: is this size specific?

MSmits: or more general?

AntiSquid: no idea how much it applies to this version when solved, but mid col start is red win and the tiles next to mid are draws so i am surprised you start with index 1

MSmits: if you look here: https://tromp.github.io/c4/c4.html

MSmits: the smaller sizes have draws as overall wins

MSmits: then they disappear for larger sizes

MSmits: as overall results i mean

MSmits: so basically, if we had 7x6 here with steal, it would be solved as a draw

MSmits: because people would open with next-to-mid

MSmits: draws seem to be super rare with 9x7

MSmits: might be that all starting moves go one way or the other, but from meta mcts, winrate seems pretty close to 50% for move 1

AntiSquid: that guy doesn't show any results for 9x7

MSmits: no which is why the size was upped to 9x7 in contribution

MSmits: to not make it too easy to solve

AntiSquid: amazing, it had good approvers :P

MSmits: yeah we took it seriously :)

MSmits: first time i approved anything

Astrobytes: And that was up for a whiiiiile

MSmits: yea

MSmits: the guy really wanted to make it good

MSmits: he spent time writing a bot too

Astrobytes: Waiting on Ash doing his boss for the most part in the end I think. And yeah, he really listended

AntiSquid: i completely missed the connect 4 WIP phase, didn't notice it before it published

Astrobytes: *listened

MSmits: btw, i don't think it's going to be the most interesting game and eventually there will be perfect playing bots on there, but thats ok with me, we should have a connect4 game as it's a classic

MSmits: plenty of other games for the die hard competition

Astrobytes: Yeah, I don't mind solved games or whatever, even really really easy ones for practice, just wish there was a category for basic/practice multis.

MSmits: yeah that would be better

jacek: if you dont care about rank, you can always experiment with different approach for the game and see how far it can go

Astrobytes: Good for testing algorithms, optimisations thereof, bitboarding etc

AntiSquid: MSmits i am looking at the pattern on the site you linked there's + for odd number of rows, i am guessing 1st player at advantage without pie rule! :P

MSmits: yeah, like Patrick with his php bots :)

MSmits: AntiSquid thats very likely from looking at my results

Astrobytes: hehe yeah, I really wish he would use C though, Patrick would be a beast

MSmits: I dont doubt it

MSmits: i think he filled his entire codesize with lookups for his uttt php bot

MSmits: dedication

Astrobytes: jacek: yeah, hence our alt accounts

jacek: your alt accounts*

Astrobytes: jacek: I have only one, you have only one as far as I am aware

MSmits: I have one too now, CG made me create it because my account went dead

AntiSquid: i thought we don't talk about those because they're not allowed? pretend they are the evil step brother of the neighbour playing from your basement or something

MSmits: it's just uttt bronze

Astrobytes: ah innoble

MSmits: ye

Astrobytes: Mines states it does not compete in the description, and says it's my testing account

MSmits: I should add a description too

MSmits: but it's not going to go beyond bronze anywhere anyway

MSmits: I guess for community things thats diffeent with the wood leagues

MSmits: mmh

AntiSquid: description : "i made this account to gave troll hints in co-op games to force a fix"

AntiSquid: give *

Astrobytes: It can go anywhere MSmits. Just deactivate it when it's not in use (submit broken code)

MSmits: ah yeah

MSmits: I'll try to just not submit if it isnt necessary

MSmits: some games have just 1 league

Astrobytes: My alt's in CSB legend somewhere in the trough of negative scores at the bottom

MSmits: ah the mariana junkyard

Astrobytes: :D

jacek: ?

MSmits: ohh i was shifting the wrong way

MSmits: i was shifting my board to the opponent board to see which of my pieces could move

Astrobytes: I TOLD YOU

MSmits: ahh is that what you meant, i just checked if my < weren't (

MSmits: :grin:

Astrobytes: FFS :D

MSmits: I just get overconfident, i type up the whole thing at once thinking i would never make a mistake

Astrobytes: Don't worry, I spent a good 2 hours on the same issue

MSmits: I often type like 200-300 lines of code and then test :P

Astrobytes: That's what I did

MSmits: makes sense then

Astrobytes: YurkovAS submitting in CSB again?

Astrobytes: Wonder what the change was, where was he before?

MSmits: around 6-7

MSmits: yay seems to count to 112 now

Astrobytes: Looks like he'll end up 5th or 6th now, seems to be between him and IGGY mostly

MSmits: is iggy a nn?

Astrobytes: gj MSmits

Astrobytes: I don't even know tbh

Astrobytes: I don't *think* so but I am free to be corrected.

MSmits: next test is to pick a random child and play that move

MSmits: see if it crashes sometimes

MSmits: if it never does, my sim is probably good

Astrobytes: You don't have to state the obvious here, you're in enlightened company

MSmits: true true

MSmits: mostly thinking aloud

MSmits: or a-type,

Astrobytes: Yeah no shit :D

MSmits: no jobby indeed

Astrobytes: Hah!

AntiSquid: very enlightened considering Automaton2000 can double for a flash light

Automaton2000: thought it was a nice one

MSmits: Automaton2000 you're the light of our day

Automaton2000: i guess that would work

MSmits: indeed

MSmits: researching clobber is gonna be weird

Astrobytes: Automaton2000: I ping you rarely, say something reasonable.

Automaton2000: why do you need to be very good

Astrobytes: Cool. I'm satiated.

MSmits: games end at ply 44 or something, solves will happen probably in the early 30s

Astrobytes: MSmits: I haven't dug very far into any literature yet tbh

MSmits: no, i am just going by the endgame branching

Astrobytes: ah right

MSmits: its early game will be super random-like, with huge branching

MSmits: but then it's decided quickly after that

Astrobytes: Yes, solves happen in the 30s

MSmits: I hope a plain mcts is good enough that a meta mcts can do some worthwhile research. If the bot is weak then the research is useless

Astrobytes: I think plain MCTS can do something with time yes

MSmits: ok will try that then, because to go beyond plain mcts will be hard with this math stuff.

Astrobytes: afaik jaceks current one is just vanilla mcts

Astrobytes: but not optimised

MSmits: isnt darkhorse64's also?

MSmits: or does he do something else?

Astrobytes: Yes but I think his is more optimised

Astrobytes: UnnamedCodinGamer also - just highly optimised vanilla MCTS?

MSmits: cool

Astrobytes: trictrac and myself are alphabeta

Astrobytes: (well, I believe so)

MSmits: the meta in olympiad scene seems to be ab so far

MSmits: from what i read

Astrobytes: that's 10x10

MSmits: oh right, that matters

MSmits: with more depth it's harder to do anything with random rollouts

Astrobytes: Well, no-one said vanilla was the way to go

Astrobytes: Multiple approaches in this game, that's why it's in so many papers

MSmits: are there really so many?

Default avatar.png UnnamedCodinGamer: mine is vanilla mcts, not very optimized - around 10000 iterations on second move

MSmits: how come you beat darkhors ethen? Or is this just random submit luck?

Astrobytes: Not specifically *on* Clobber MSmits - it's used in algortithm papers as a test game

Default avatar.png UnnamedCodinGamer: I think it is luck

MSmits: with so few games, thats possible

MSmits: ah ok Astrobytes

darkhorse64: mcts + solver. Not very optimized

Default avatar.png UnnamedCodinGamer: although I beat him in the IDE from time to time

MSmits: you still have 26k vs UnnamedCodinGamer's 10k

Astrobytes: I beat you both in the IDE from time to time currently

MSmits: well i beat the boss from time to time

Astrobytes: Not good enough to submit yet though

Default avatar.png UnnamedCodinGamer: yes, I have good record against trictrac

Default avatar.png UnnamedCodinGamer: but this is eyeballing

Default avatar.png UnnamedCodinGamer: we need more games

Astrobytes: I beat trictrac in the IDE 100% currently only under very specific conditions, not a good metric right now

Astrobytes: Yes, more games.

AntiSquid: clobber reminds me of dots and boxes to some degree

AntiSquid: count how many turns are left

MSmits: mathematical it's the same type of game, uses the same kind of theory

Astrobytes: Yeah, I guess there are similarities but not quite the same chaining wise I think (I didn't even do D&B)

MSmits: it has a similar graph, except when you remove a line, you also possibly add a new line (= edge).

Astrobytes: Any recommended papers?

MSmits: the one that was shared earlier

Astrobytes: I think I may have been afk for that

MSmits: https://project.dke.maastrichtuniversity.nl/games/files/msc/Claessen_thesis.pdf

MSmits: but it gets very mathematical, very quickly

MSmits: may need to do some side-searches to get through it

Astrobytes: Hmmm one of those

MSmits: it's worth it to read about nim and numbers before you go in there

MSmits: nimbers that is

MSmits: i have some knowledge of that, but i still find it hard to get through it

MSmits: this is one of winands students. I think it might also not be written very well, because of his inexperi3ence

MSmits: but there is not much else

MSmits: it's pretty indepth

Astrobytes: That doesn't look too bad, other than the nimbers (of which I have basic knowledge) it's pretty readable no?

MSmits: page 14

Astrobytes: (just glancing at it, maybe it's harder to follow)

MSmits: look at the table

MSmits: there's all sorts of weird notation

MSmits: the paper assumes you've seen it before in some form and it's mostly a quick recap i think, or is intended to b e

AntiSquid: so many games ported to cg geez, still didn't play the pengu one seriously

MSmits: but of course if you never have, it's pretty painful to get through those pages and you may need extra reading

MSmits: me neither, not yet anyway

AntiSquid: you didn't even submit

MSmits: no thats what i mean

MSmits: it seems interesting

MSmits: but no time

AntiSquid: i submitted but don't call it serious

MSmits: still want to do jace ks game too

MSmits: and some others

MSmits: and eulers game, but it seems hard

Astrobytes: ooh I see MSmits

AntiSquid: which one of euler's games?

MSmits: tryangle

MSmits: i played the other ones

MSmits: actually no, i didnt do tower defense either

MSmits: just onitama

Astrobytes: I don't know if that's Knuth notation or what

MSmits: it's related to nimbers i think

MSmits: it's all combinatorial math

MSmits: same math used in nim, D&B

MSmits: and that hackenbush game they talk about

Astrobytes: Oh christ fields

MSmits: i think he's not online

MSmits: so he wont see that new nickname

Astrobytes: No, it's field theory some of it

MSmits: ahhh

MSmits: not sure, it does look a bit like QM notation, but diffeent

MSmits: i dont see any tensors?

AntiSquid: there, done some power submits in D-lang now i started all games

MSmits: you started all games??

AntiSquid: with an initial submit, yes

MSmits: ah ok

Astrobytes: MSmits: https://en.wikipedia.org/wiki/Nimber

MSmits: at least you're not one of those people who is afraid to have a rank 2000 on their profile

Astrobytes: Scroll down

MSmits: finite fields?

Astrobytes: Aye

MSmits: aha

MSmits: might be a different kind of field than the ones in physics?

Astrobytes: No shit!

MSmits: hehe well... maybe i'll be learning some new stuff for this game. Depending on how addicted i get

MSmits: oh it has the e2e3 notation.

MSmits: time to steal some conversion stuff from other bots

MSmits: that conversion stuff hurts my head

MSmits: checkers might have the same

Astrobytes: Think I used my Othello one

MSmits: oh right, thats closer

reCurse: Conversion?

MSmits: to board coords with a1 and such

MSmits: from bitboard

reCurse: Isn't that a one liner?

MSmits: probably, but I mess it up and I have the top of the board as the low bits

MSmits: then i have to invert the board... that sort of thing

MSmits: i make it hard for myself

jacek: i copy paste from other games but sometimes i need to flip columns and/or rows

reCurse: You could just ignore game conventions, use your own, and translate it only at the step closest to input or output

MSmits: thats where i am at

Astrobytes: That's what we do :)

MSmits: i'm done with move generation and such, just trying to output the moves so i can test the sim

reCurse: Which game

Astrobytes: Clobber

MSmits: my othello does this:

MSmits: string bestCol(1, 'a' + bestBitIndex % 8); int bestRow = 1 + bestBitIndex / 8;

jacek: i tried to nn first. i copy pasted 'framework' from other games but it couldnt learn anything at all. i thought i had some errors there

jacek: at the very least, even with crappy inputs, new network should be better than the first random one. but it wasnt

MSmits: was it a bug?

jacek: dunno, i searched but i eventually gave up

Astrobytes: Reading board wrong way round or something

jacek: my bot is just mcts

MSmits: well for D&B i expect this result, but clobber has some eval options, so nn should help

Astrobytes: Quite a few eval options

jacek: in d&b learned network was indeed better than random

MSmits: oh it was? Did you get a good bot from it?

jacek: it had a strength more or less what i have submited now

jacek: 15th rank

jacek: which is mcts

MSmits: ah ok

jacek: so still way better than clobber

MSmits: yeah

jacek: maybe if it gets approved ill get more serious

MSmits: maybe it has problems with the high branching?

MSmits: you might have these issues with amazons

Astrobytes: Is your derjack your learning bot in Clobber jacek or your main bot?

jacek: nah, it works for amazons

MSmits: hmm ok

Astrobytes: Oh, interesintg

Astrobytes: *Interesting

jacek: no, clobber is mcts. derjack is random

Astrobytes: Ah ok

jacek: though for amazons for now i have good old alphabeta

jacek: but locally i have nn that beats him 90%

Astrobytes: Very nice

jacek: so if you piss me off..

Astrobytes: lol

Astrobytes: It seems to be that MCTS is the way forward with Clobber

Astrobytes: Though I haven't tried all ab enhancements yet

Astrobytes: Or eval options for that matter

MSmits: mmh it's trying to go from d1 to d8

Astrobytes: Are you reading the board in normally

MSmits: what do you mean normally?

jacek: as in, not abnormally

Astrobytes: 0 - boardSize

MSmits: yeah

Astrobytes: for y and x

MSmits: so the low bits are up top

jacek: http://chat.codingame.com/pastebin/b88fd081-9830-4f73-80aa-5c0f874b0768

MSmits: probably i should just check if the bitindices are valid on a paper grid

Astrobytes: but you're given the a1 square first remember

MSmits: well that helps :)

MSmits: no it starts at top

MSmits: a8 first

Astrobytes: 8 I mean

Astrobytes: (duh)

MSmits: yeah i knew that

MSmits: its some other bug

MSmits: but gonna try jaceks nice array

MSmits: can always use a one liner later

jacek: prunearray

MSmits: mmh i am confused though, why is H8 your first square?

Default avatar.png GeorgiD: 54 21 6 33 14 70 20 88 99 14 -> 21 54 6 33 14 70 20 88 14 99 1 2 6 5 4 -> 1 2 5 6 4

Default avatar.png GeorgiD: What is the logic behind those 2 outputs

Astrobytes: I have A1 as my first

jacek: hmm i think i have my parsing reversed as well

jacek: http://chat.codingame.com/pastebin/64b79f34-9f38-4f1a-8e64-b3d43ee4d9a6

jacek: GeorgiD pairs? first number lower than second in pair?

MSmits: yeah you do it differently

Default avatar.png GeorgiD: Hm yeah you are right

Default avatar.png GeorgiD: Thank you

Astrobytes: MSmits: I do this: http://chat.codingame.com/pastebin/c317ff66-24a0-41da-8557-78907bce69cb

MSmits: right yeah, I think mine works ok, the conversion at least. It's the sim thats broken

MSmits: http://chat.codingame.com/pastebin/b51cbdd9-a2da-457c-8aa2-4074f13b95b8

MSmits: after move

MSmits: http://chat.codingame.com/pastebin/55e609c8-9646-4dda-b0ea-b3950d7fb27b

MSmits: so it jumped from top to bottom

MSmits: it actually outputs this correctly

MSmits: d8d1

jacek: oO

MSmits: no idea how i managed this

Astrobytes: I had such problems, it was all bitwise idiocy

Astrobytes: What's your movegen algo? Not details but generally

MSmits: it's not rocket science

MSmits: http://chat.codingame.com/pastebin/ee2dcba7-231b-4059-8f39-b67c6078d393

MSmits: can be written more efficiently and with less repeated code ofc

Astrobytes: Oh you do them all in one like that

Astrobytes: I have an array

MSmits: yeah, thats what i usually do

MSmits: hmm, an array of moves?

Astrobytes: You need to order them at some point in alphabeta so gotta have an array

MSmits: oh ok

jacek: http://chat.codingame.com/pastebin/923e0643-d56b-4f22-a33d-9f515a52c8da

MSmits: thats unoptimized due to conditionals

jacek: meh

MSmits: but i guess its a good start

MSmits: steal mine if you want, but fix the bug first

MSmits: and let me know what the bug is :P

MYBK: Hi, about coders strike back, I want to create a solution using Heuristic algorithm like Genetic Algorithm, (I read some article in the matter) but what I did not understand, how can I choose the best individual to compete after training them especially if the genome consist of the next 6 turn... can anyone explain the matter a little bit more please ?

MSmits: it's weird, an upmove should not wraparound to the bottom, uint64_t doesnt wrap around on shift

MSmits: sorry MYBK, GA is not my specialty

MSmits: many of us here know though

MSmits: bit late euro time

jacek: can bitIndex be negative?

jacek: or rather bitIndex-8

MSmits: oh

MSmits: hmm

Astrobytes: switch your shift directions for up and down

darkhorse64: Why not writing directly into the child ?

darkhorse64: oops lag

MYBK: emm I understand, thank you @MSmits :D

I will re-ask tomorrow then

MSmits: dunno darkhorse64 did not give it much thought yet

MSmits: c7c8 is what it did now

MSmits: which would be ok, if that wasnt a black move

MSmits: but... improvement

MSmits: was this a guess Astrobytes?

Astrobytes: ctz or clz

MSmits: or did you notice something?

MSmits: shouldnt matter ctz or clz

MSmits: only the order is different

Astrobytes: It does if you do other stuff the wrong way round

MSmits: ahh ok

MSmits: always use ctz

Astrobytes: It wasn't a guess no, I had some similar issues

MSmits: I see

darkhorse64: MYBK: you choose the genome that has the best score. Sorry if it is an obvious answer

AntiSquid: asking on discord and here? so where do you want the answer?

Astrobytes: Right, I am reallllly tired.

Astrobytes: I bid you all goodnight

AntiSquid: do some push ups to get the blood circulation up

AntiSquid: good night

MSmits: gn!

Astrobytes: With my back issues that woudl be very interesting AntiSquid!

AntiSquid: i've read somewhere exercise can prevent sleep :D

MSmits: darkhorse64, when i print the board when it's received as input i get

Astrobytes: MSmits: I'm sure you'll figure the bugs out but if not hit me up tomorrow

MSmits: will do, thanks Astrobytes

MSmits: http://chat.codingame.com/pastebin/bd122b4a-6296-4fe6-a447-c2e8efc628d6

MSmits: but topleft square is white

MSmits: in the cerr it's black

MSmits: :confused;

Astrobytes: you're reading it in as white

MSmits: yeah

Default avatar.png cobunny: Whats this pattern input: 101 output 10201

AntiSquid: yes

Astrobytes: Your bitboard is going from 0 = a1 to 63 = h8

MSmits: correct, but this is not about the bitboard, i am just printing it as it is inputted

MSmits: without using bitboard

Astrobytes: yes, that's how it's given

MSmits: but it's not how it looks in the viewer

MSmits: in the viewer topleft is white and in cerr topleft is black

Astrobytes: yes, because bottom left is a1

MSmits: right, but it says in the description it gives info top to bottom

MSmits: so it should appear in cerr the same way as it looks in viewer

Default avatar.png cobunny: what's the math formula from 101 to 10201

Default avatar.png UnnamedCodinGamer: I was also confused about it

MSmits: is this a description error?

Default avatar.png UnnamedCodinGamer: but it is minor stuff

Astrobytes: Oh right, yeah, I guess it is

MSmits: Next boardSize lines: line: a string of characters representing one horizontal row of the grid, top to bottom.

Astrobytes: But you can figure that out pretty quick at least

MSmits: yeah, my mind is just set to assume descriptions are perfect. I forgot it's a wip :)

Astrobytes: STILL: SHAME ON YOU AND YOUR ANKLES darkhorse64

Default avatar.png Binary_Sky: thats just squared

AntiSquid: never forget the mobius striptease

darkhorse64: Yeah, I was just checking the inputs. I have a bug

Default avatar.png cobunny: n*n

Astrobytes: No wonder we all had to do some jiggery-pokery here

MSmits: will crash every bot on the board if you fix it darkhorse64

Default avatar.png UnnamedCodinGamer: fix the text

darkhorse64: Not mine

MSmits: well unless you fix the description, but that woul dbe counter to every other games description

Astrobytes: It's just a WIP, as long as that's indicated it's OK technically

MSmits: they all receive input top to bottom

MYBK: @darkhorse64 thank you for responding, I need a sec to reformulate my question... I am too confused about the problem that I didn't know what to ask

MSmits: yay my bot works

MYBK: GG

darkhorse64: I'll fix the referee because I want to stick to the rules

MSmits: http://chat.codingame.com/pastebin/cbbfa430-2706-4303-9bf3-d1b6026c100d

MSmits: i added the 7-i

MSmits: instead of i

MSmits: to reverse vertically

MSmits: so if you fix it i just go back to just i

AntiSquid: guys i am giving you a 10 second count down before i ask my question, then i will ask whether i can ask the question to make sure you're still here

Astrobytes: there's a world of ways to do it

Default avatar.png Tuo: at MYBK question: how can you run a genetic algorithm on a CG game?

Default avatar.png Tuo: you would need your own game engine?

AntiSquid: that has been done countless time Tuo

MSmits: you need to simulate the game indeed Tuo

MSmits: or at least simulate the parts of it you want to optimize

AntiSquid: the standard CG boiler plate code

Astrobytes: anyway, now I sleep. gn again!

MSmits: for simple games that i strivial

MSmits: yeah gn and thanks again

AntiSquid: only one gn wishing per day, gotta ration that

Default avatar.png UnnamedCodinGamer: gn

darkhorse64: I'll post a message in the forum once it's fixed. Not before this weekend

Default avatar.png UnnamedCodinGamer: like soma in brave new world

MSmits: no hurry darkhorse64

Default avatar.png UnnamedCodinGamer: yes, no hurry

AntiSquid: no! hurry darkhorse64

Default avatar.png UnnamedCodinGamer: does the submit history get preserved after a change in the game?

MSmits: no idea

lopidav: is it hard to make multiplayer games here and where to start?

darkhorse64: play them or design one ?

lopidav: design one

AntiSquid: answering own question @_@

darkhorse64: CG supplies a Java SDK including a few examples. The source code for many contribs is also available

lopidav: oh, for some reason I thought it uses c++

lopidav: is it hard tho. How many hrs are needed to make something like trolls and castles?

AntiSquid: probably 1 ?

lopidav: 1 hour?

MSmits: depends on the coder

darkhorse64: You should ask JBM, the author

MSmits: probably days

AntiSquid: depends on familiarity with the SDK

darkhorse64: depends on your ambitions

AntiSquid: troll vs castles is one of the least time consuming ones

darkhorse64: Clobber took me less than two days but I reuse lots of code

AntiSquid: i have an idea, but i keep ruminating on it for ages

AntiSquid: it's most important to trick people into liking it and do that first submit lopidav

AntiSquid: hint: the D submits aren't your target crowd

lopidav: what's "D submits"?

AntiSquid: glad you asked

AntiSquid: https://dlang.org/

AntiSquid: D is a general-purpose programming language with static typing, systems-level access, and C-like syntax.

lopidav: of, a language. I thought it's a rank or something

lopidav: *oh

AntiSquid: it is a social rank

AntiSquid: of high standards

MSmits: mmh darkhorse64, are you right now messing with clobber?

Default avatar.png cobunny: 1 44 return true why?

Default avatar.png cobunny: wasting time puzzle

MSmits: cuz it's like the input switched around again

AntiSquid: try to do something other than clash

Default avatar.png cobunny: 3 3254 24 654

Default avatar.png cobunny: this all true

AntiSquid: there's a whole world outside that cave of clash

Default avatar.png cobunny: Kinda addicted and need to practice to get a new job

Default avatar.png Mario100o: hi

AntiSquid: that's NOT how you get a job

Devinawesley: I got sent here during an interview and just been playing since

AntiSquid: unless there's a company hiring clashers

Default avatar.png cobunny: Same here

AntiSquid: try this then: https://www.codingame.com/multiplayer/bot-programming/fireworks

Default avatar.png cobunny: The questions are not very practical for a technical interview

AntiSquid: or something else that's fun

AntiSquid: i wouldn't do puzzles for interviews

Default avatar.png cobunny: Where do you practice for interviews

Default avatar.png cobunny: I mean is there any timed tests like this

Default avatar.png UnnamedCodinGamer: MSmits, input seems unchanged. First line is "bwbwbwbw".

MSmits: ye, is my mistake, nvm darkhorse64

Default avatar.png cobunny: I'm looking for software engineer/backend dev interview practice test or some sort

AntiSquid: cobunny play this https://www.codingame.com/multiplayer/bot-programming/botters-of-the-galaxy get legend, i guarantee you will realize how to get a job much easier

Default avatar.png cobunny: I'll try it later. Thanks

MSmits: no dont lol.. AntiSquid is evil

AntiSquid: no evil, it's true, look at the wording MSmits, also the more you postpone the longer it will take to get that job

AntiSquid: it makes you think and deal with difficult situations

AntiSquid: like in interviews

MSmits: sure, you will learn never to try that again :p

Default avatar.png cobunny: What do you mean?

AntiSquid: you're the evil one to be frank MSmits

Default avatar.png cobunny: :rolling_eyes:

AntiSquid: so much hate for the game

MSmits: i never played it

AntiSquid: cobunny in interviews they test problem solving skills

MSmits: i just listen to people complain about it

AntiSquid: you need to step it up

AntiSquid: you just follow the herd ?

MSmits: cobunny, go do uttt :)

MSmits: the herd does it

MSmits: :sheep:

Default avatar.png cobunny: I'm gonna go. Ice cream time

AntiSquid: cobunny point is you need to think outside the box and there's a need for the right trigger to make that happen, i showed you the way to the water, you must drink on your own

MSmits: :ice_cream:

MSmits: :icecream:

AntiSquid: or the ice cream if you will, you must lick it yourself, nobody will lick it for you

MSmits: i'll do it

Default avatar.png cobunny: What????

Default avatar.png Tuo: y i agree u are both evil :smiley:

AntiSquid: otherwise it wouldn't be your ice cream anymore

MSmits: gimme your icecream

Default avatar.png cobunny: No!

MSmits: he's standing up for himself already AntiSquid

MSmits: CG teaches you confidence

Default avatar.png cobunny: I'm F

Default avatar.png cobunny: sorry guys

MSmits: you're an A

AntiSquid: doesn't matter

MSmits: confidence!

Default avatar.png cobunny: I mean Female

Default avatar.png cobunny: lol

MSmits: ohh ok

AntiSquid: i would have typed the exact same words no matter who you are

Default avatar.png cobunny: haha..

Default avatar.png cobunny: Thanks though

MSmits: cool

MSmits: need more female coders

Default avatar.png cobunny: Nerdyy..

MSmits: don't scare this one away AntiSquid

AntiSquid: wtf ?

MSmits: :grin:

AntiSquid: who did i scare away?

MSmits: I was kidding ofc

Default avatar.png cobunny: Later guys. Ice cream is melting:grin:

AntiSquid: really? you keep trashing botters and me

MSmits: allright see you later :)

MSmits: botters of the galaxy?

AntiSquid: best game

MSmits: I'm just trying to prevent a new player to trying to write a 2k line sim :P

AntiSquid: you don't need a bloody sim and you don't need 2k lines

AntiSquid: actually a lot of the "popular" games need just that 2k lines of sims

MSmits: hmmh, well I'll take your word for it, it's not what others told me

AntiSquid: if you can golf the other ones then you can golf botters

MSmits: you really like the game or still messing?

AntiSquid: MSmits just try it yourself

MSmits: i was just trying to figure out if you were kidding

AntiSquid: there's certain aspects people don't like about it

AntiSquid: but only certain people

MSmits: the 5%?

AntiSquid: from there it's word of mouth

MSmits: I see

AntiSquid: and then there is sort of a circumstantial appeal / activity

MSmits: well if you honestly like it, it's fine. I thought you were trolling the new player :)

AntiSquid: i wouldn't suggest pacman is top notch game, but participation count and word of mouth matters more

MSmits: sure

AntiSquid: i am just saying it's a biased opinion you rely on

MSmits: but i dont like it when new players quit because everything is too hard

MSmits: if botters is easy to get into, it might be a good starter game

AntiSquid: there's a CG meta, or at least there was one, people followed specific boiler plate code standards and then complained a contest broke things for them

MSmits: hmm, i never knew that

AntiSquid: it is a good starter game, it has a lot of inputs, which is what many complain about, thing is you don't need to take everything into account

MSmits: I see

AntiSquid: it's what i got from the complaints, people keep saying it's intentionally made to be anti-simulation lol

AntiSquid: there was never such intent

MSmits: seems to me there's just a lot going on

MSmits: a lot to sim

MSmits: like FB

Default avatar.png Tuo: i have it open now: game explanation is less lines then inputs

Default avatar.png dittygoops: tiddygooper in the house

AntiSquid: ya exactly, it looks like a lot, but there's a lot you can just skip through and focus on what matters

Default avatar.png dittygoops: *dittygooper

Default avatar.png Tuo: looks pretty scary :D

AntiSquid: more like how i have a half-complete bot for fireworks

AntiSquid: trying to think of a best analogy

AntiSquid: probably there is none, but you can stick to one thing and make progress basically

Default avatar.png Tuo: well first league beaten!!! how is thought now :) im coming for u(after spring challenge maybe)

AntiSquid: you can use it to practice for spring challenge

Default avatar.png Tuo: 1 day left, how much can u practice?

AntiSquid: oh lol shit so soon?

AntiSquid: should have booked my holidays one week later (had to take it or i lose them now before april)

AntiSquid: oh well got the first weekend then

AntiSquid: tuo you can get into the contest spirit by sprinting up the botters ladder

Westicles: Is it May already?

Default avatar.png alopikon: But, it is not march 6, it is may 6, isn't it?

AntiSquid: ya just checked it's in may lol

Default avatar.png Tuo: oh shit

AntiSquid: tuo you have 1 day + all the remaining time

Default avatar.png Tuo: y :D

AntiSquid: guess on the 6th everyone is going to spam what happened to the contest?

Default avatar.png Tuo: well this is sad

Default avatar.png Tuo: i was excited for a competition

AntiSquid: you have more time for botters now

AntiSquid: by the time contest starts you will be breaking bots and bits

Default avatar.png Tuo: lousy non native english speaking brain mixing up stuff :(

Default avatar.png Tuo: y much time to prepare

lopidav: https://www.codingame.com/clashofcode/clash/report/162348367d6d05b7994caf0979a24d5362c7dcf

lol

Default avatar.png DiDzTM: Hi!

Default avatar.png klyons: give me the anw3er or else

Scarfield: 42

AntiSquid: that's not an anw3er Scarfield

Scarfield: no, but it's the answ3r

Scarfield: anyway im for for today, gn whoever is still here

AntiSquid: bye bye