Chat:World/2021-03-05
Xotiic_312: I am very new here just started my epic coding journey
Xotiic_312: I sounded just like those weird intro people in every coding adventure right?
thanshaw: anyone out there?
padobranac: yup
UwU_HEWO_UwU: hihi :3
UwU_HEWO_UwU: :upside_down:
MonishM: how do i get promoted to a new level on spring challenge 2020
MonishM: im 1/371 but still at the bottom level for some reason
Theino: it can take a few minutes
Theino: that's what I'm working on too!
Theino: u2
UwU_HEWO: hoi dare :T
UwU_HEWO: :u6709:
oddoneout: g'morning!
UwU_HEWO_UwU: morning
UwU_HEWO_UwU: :3
UwU_HEWO_UwU: :3
oddoneout: uwu wats this
wzg: hello smile
derjack:
KyeSama: hi
etkgjt: hello
Passifi: good mornin' fellas
jrke: hello
PewPewBewm: o/
Passifi: Jo anyone know How you activate that need double cursor ? I only ever do that by accident and I think it might come in handy one day to be able and summon it deliberately ^^
Uljahn: press F1 for a list of commands
joanne42moore: Is there some way to keep trying to solve a Clash of Code after the timer runs out? Not for credit of course, just to practice :)
Uljahn: no
joanne42moore: thanks Uljahn
darkhorse64: try puzzles
joanne42moore: Good idea darkhorse ^^
Passifi: thanks Uljahn
UwU_HEWO_UwU: -w-
UwU_HEWO_UwU: UwU
UwU_HEWO_UwU: UwO
darkhorse64: try easy puzzles first, especially the official ones, then either raise the level or random pick amongst others. The quality varies a lot, so follow your feelings and interests
Astrobytes: amazing, in 8 out of 11 games I had 3 against you, darkhorse64, and 5 against... derjack
darkhorse64: Before the approval, the choice of opponents is really working bad. I can admit very few games but opponent choices could follow the same rules
Astrobytes: Yeah, very annoying. Meh. Now we just have to wait on everyone fixing their bots since your update!
darkhorse64: I think I fixed the problem (quite easily actually). Amazons is buggy too: board origin is wrong. I did a fix for my own game but it was incomplete
Astrobytes: Did you already comment on the Amazons contribution?
darkhorse64: ofc
Astrobytes: It's easy enough to compensate for in your bot but it is a little confusing.
darkhorse64: I also updated my repo so struct can pick the code if he wishes
Astrobytes: Ah nice. Sharing is caring. Now you've returned the favour the balance is restored in the universe.
darkhorse64: I did not change anything to my bot because I hardly use any inputs except previous move
darkhorse64: I know inputs help for debugging butt they are mostly useless (size, side, moves, state)
Astrobytes: Yeah, that's a convenient way I guess. I only added 4 chars
Astrobytes: And yeah, my bot evolved from the debug bot so still uses everything
Astrobytes: last move and number of moves are the most useful for debugging anyway
darkhorse64: I reuse my mcts tree, so I need to update the state rather than rebuild it from scratch (is that correct ?)
Astrobytes: Yep
Astrobytes: Hence importance of last move
darkhorse64: I sometimes forget to ask for it in other contribs and I have to guess it from previous and current state
Astrobytes: I think you've been quite consistent in asking for it recently though.
You think boss will be less-able version of your bot or will you write a low depth alphabeta?
derjack: whats changed?
derjack: and whats wrong with amazons
Astrobytes: Board is now given in the order that you see it on the screen
derjack: oh lol. i always randomly flip/rotate inputs to match mine
darkhorse64: It bothers me to write one ab but I need to because I do not want my code to leak. I wonder if mobility as an eval is OK because if there is a white move, black has the same reversed. So eval cannot be the difference in mobility but the mobility itself
Astrobytes: Yeah I do too derjack
darkhorse64: amazons origin is wrong
Astrobytes: mobility works to an extent, you might want to weight it heavier for one player to compensate
Astrobytes: And regardless of what you write, it will leak anyway :/
darkhorse64: My concern is whether it's a valid eval at all. If it beats random, that's OK. I plan to make something readable (no bitboarding, avx)
derjack: did msmits already update
MSmits: just did, but i am in class, so cant chat :P
Astrobytes: my first basic testing ab worked fine with 10 + pMobility - eMobility
Astrobytes: Just to give it a nonzero score. It beat random no problem.
darkhorse64: but msmits can code
Astrobytes: Teaching or learning?
MSmits: learning, my fp class
Astrobytes: Get back to work!
darkhorse64: pMobility - eMobility is not always 0 assuming its opp vs me ?
Astrobytes: Yes. That's why you should weight one side more than the other
Astrobytes: (for this basic boss bot, not for a real bot ofc)
darkhorse64: OK but all nodes have the same score then ?
MSmits: btw: I've got basic mcts bot ready. Writing meta mcts now, or at least, adapting my othello one
darkhorse64: It proves one thing: rushing to approve a contrib is a bad thing
Astrobytes: Ah, wait. My mobility also takes number of surrounding enemy pieces into account
Astrobytes: And yes, that's why they stay up for ages
Astrobytes: Mostly.
darkhorse64: It's an element of strategy in Clobber to group opponent pieces into islands, your feature makes sense
darkhorse64: There is a recent contrib that is under the radar: Volcanoes. It's an original game (as opposed to a clone) and deserves a look. The statement really need an improvement because it's hard to understand how to win
Astrobytes: I saw that. I think it is based on an existing game however
darkhorse64: Yep but the game designer itself ported it to CG
darkhorse64: himself
Astrobytes: Oh it's his game? That is rather awesome.
darkhorse64: Worth a blog post from CG ?:stuck_out_tongue_winking_eye:
Astrobytes: Hah!
Astrobytes: The competition : fun ratio will have to be measured first :P
darkhorse64: skotz is a regular contest participant
darkhorse64: I expect Clobber FR to be low compared to BT
Astrobytes: Yeah I've seen him last few contests
Astrobytes: Feel free to suggest the idea to T
Astrobytes: FR?
Astrobytes: Fun ratio?
MSmits: he expects French people will suck at Clobber
Astrobytes: :fire:
MSmits: :)
darkhorse64: The only feedback i got from fr is: "yet another board game"
Astrobytes: hehehe, that sounds like fr
Astrobytes: I guess it is a bit of a niche interest, that said: "be the change you want to see"
darkhorse64: Yep, Clobber is a niche game mostly because there are no tactics involved
Astrobytes: Abstract strategy games tend to polarize opinions due to aspects like that
Astrobytes: *opinions from purists
darkhorse64: fr is really different from world, content-wise. The discussed topics are really different
Astrobytes: I do read it now and then ;)
Astrobytes: Far more puzzle-oriented for a start
Astrobytes: That a statement or a question? It's somewhat ambiguous as it stands currently...
AntiSquid: what do you usually discuss on FR darkhorse64
TheBarnacle: I haven't been clashing long, are there mistakes with the tests occassionaly? Or should I just assume I'm wrong?
TheBarnacle: It's two in a row where the second out of 5 has failed
AntiSquid: clash is temporarily broken, play multiplayer for the time being
AntiSquid: https://www.codingame.com/multiplayer/bot-programming TheBarnacle
UnnamedCodinGamer: MSmits crushing it in clobber
TheBarnacle: Good to know I'm not losing my mind, thank you!
AntiSquid: glad to help
Astrobytes: Did you expect anything less UnnamedCodinGamer? :D
UnnamedCodinGamer: certainly no
MSmits: i dont think it's stronger than yours
MSmits: random luck
MSmits: it's just basic mcts, nothing smart
MSmits: I chose to expand all children at once and do 100+ sims
MSmits: probably not the best choice
MSmits: havent experimented with other ways
MSmits: the branching reduces extremely quickly as game progresses
darkhorse64: afk
UnnamedCodinGamer: last four battles on my side are four losses against your program
MSmits: hmm ok
UnnamedCodinGamer: I wish I knew how to get my iteration count higher than 10k
Astrobytes: yay I beat you once
MSmits: i get 1500-2000 rollouts, but thats simulating from each child, so times 112
UnnamedCodinGamer: I feel miserable
UnnamedCodinGamer: wondering where the slow parts are
UnnamedCodinGamer: I also expand all children at once
MSmits: Rollouts: 1280 Sims: 112643
Astrobytes: Assuming you're not allocating memory after the first turn, are you calculating something too often? Nodes too heavy?
UnnamedCodinGamer: and I tried your idea of picking random direction in the rollout - it did not do anything to improve iteration count
MSmits: http://chat.codingame.com/pastebin/a4b4ae69-13b2-49cb-bd05-727ed0d8e65b
UnnamedCodinGamer: http://chat.codingame.com/pastebin/d9f89c39-8001-4816-bdf3-da71fb4c6998
MSmits: dont store a vector
MSmits: in a node
Astrobytes: Ever
Astrobytes: On CG
Astrobytes: In fact you don't even need pointers. Just index of parent, index of first child, number of children
MSmits: http://chat.codingame.com/pastebin/b9feaf1a-54ec-41b6-ae55-eed2ec337928
MSmits: use a node pool
UnnamedCodinGamer: makes sense
MSmits: Node nodes[NODE_MAX];
UnnamedCodinGamer: I am already
MSmits: const int NODE_MAX = 25000000;
UnnamedCodinGamer: Move* nodes = new Move[5000000];
Astrobytes: These changes will help you get the most out of your node pool
MSmits: thats not the same
MSmits: you have a pool of pointers
MSmits: I have a pool of actual nodes
Astrobytes: ^
UnnamedCodinGamer: it is not a pool of pointers - it is an array located on the free store
derjack: high branching factor lowering as game progresses? thats job for books
MSmits: sure but the vector of moves is not in the pool
derjack: have you counted how many unique moves are thre
MSmits: first turn it's 112
MSmits: next probably 108 or so
UnnamedCodinGamer: MSmits, which vector of moves do you mean?
derjack: unique as exclude symmetry
MSmits: vector<Move*> children;
Astrobytes: the one on your node
MSmits: thats dymically allocated
MSmits: dynamically
MSmits: dont do dynamic allocation
UnnamedCodinGamer: I will get rid of it
derjack: hes conservative, he doenst like dynamics
MSmits: yea
UnnamedCodinGamer: I can do only indexes
MSmits: the children are sequential
MSmits: so just refer to the place in the pool they are at
UnnamedCodinGamer: yes, that is what I meant
UnnamedCodinGamer: how do I sort them then?
MSmits: you sort them in mcts?>
MSmits: I never sorted anything in mcts
Astrobytes: that's what the stats are for
UnnamedCodinGamer: I sort them in the selection phase to get the one with the highest uct value
MSmits: no need to sort
MSmits: just remember the highest value and best node
Astrobytes: ^
MSmits: sorting is very slow
derjack: ucbScore in node, you write uct value in node?
UnnamedCodinGamer: http://chat.codingame.com/pastebin/b7c377cc-ad93-4498-afa1-b74da4ff4781
derjack: during selection just iterate over children
derjack: its O(n) instead of sorting O(nlogn)
Astrobytes: Yep, no need for the sorting at all.
MSmits: http://chat.codingame.com/pastebin/29192a7c-1cfe-4e97-8c85-dd0d815d72c2
MSmits: status is solved status
MSmits: 2 means not solved
MSmits: -1,0,1 is solved, except 0 doesnt happen in clobber
derjack: https://github.com/jdermont/QtYavalath/blob/master/src/ai/cpu.cpp#L66
UnnamedCodinGamer: thanks a guys, that was very helpful
MSmits: np
UnnamedCodinGamer: I was sure what I am doing is heavily unoptimized
MSmits: yea, but should improve a lot now
Astrobytes: Yep. Unfortunately MCTS doesn't work 'straight out of the box', as it were, on CG
MSmits: what do you mean Astrobytes?
Astrobytes: Or rather, it does, but not well.
UnnamedCodinGamer: actually it works, but not competitively
MSmits: it's not a CG thing, the stuff you find on google is just poorly optimized
Astrobytes: Look at most implementations of MCTS in the wild MSmits
Astrobytes: That's what people try to implement on here.
MSmits: yeah
UnnamedCodinGamer: the algorithm is algorithm - it either works or not
derjack: especially in python
MSmits: it works, but it's not necessarily fast
UnnamedCodinGamer: the problem is that you need iteration counts to be high to compete
MSmits: not all sorting algorithms are equally fast either
UnnamedCodinGamer: this is just a side of CG
MSmits: right
derjack: or any competition
UnnamedCodinGamer: that is why I do not like competitions
MSmits: i hardly worry about these things anymore though, you get used to writing optimized code
UnnamedCodinGamer: yes, it is a craft
MSmits: mostly i spend time experimenting with actual eval features or heuristics
derjack: witchcraft
MSmits: some ways of doing things in optimized fashion are also easier
MSmits: working with object pools for example, means you dont need to worry about leaking memory/collecting garbage
UnnamedCodinGamer: yes, it is handy
MSmits: of course you may run out of actual object pool but that only happens when your node is really big, or your bot really fas
MSmits: and if it's really fast, then that is mostly a good thing :)
MSmits: it's just that for professional coders, or coders that do other things besides CG, this way of coding things may run counter to every fibre of their being
MSmits: you're going against a lot of convetions
MSmits: conventions
MSmits: maybe that's something you dont like
MSmits: for example, i define my node for the nodepool without any default value, so it's unassigned memory.
MSmits: your IDE may complain
MSmits: but assigning 600+ Mb of memory before the game is not really an option
UnnamedCodinGamer: I guess this is the "witch" part of the craft
MSmits: yeah
MSmits: it also makes doing this in C# or java hard
MSmits: those languages complain even harder when you do this
MSmits: need some workarounds I think
MSmits: btw, before you think i am some kind of c++ wizard. I know almost nothing of c++ besides what i need to write a bot
MSmits: highly specialized
MSmits: I can't make a simple app in c++
UnnamedCodinGamer: I also started to learn it "due to" CG
MSmits: ahh ok, same boat then
MSmits: I can do a bit more in python and C#
MSmits: my meta mcts apps are all C# windows forms programs calling c++ bots
MSmits: and for work, i teach programming in python
UnnamedCodinGamer: I started 5-6 years ago with python, then switched to java, now to c++ mainly
UnnamedCodinGamer: I code in my free time
UnnamedCodinGamer: so I am not a master of any of them
MSmits: same mostly. Though I hope to teach some more classes at work. Only 4 hrs a week currently
MSmits: maybe next year 6-8 hrs a week. Rest of the time is teaching physics
MSmits: we need to motivate students to pick our subject. The more students, the more hrs i get to teach CS
UnnamedCodinGamer: you also do a bit of teaching here :)
MSmits: yeah thats true, I also learn a lot though. Most of the general botting knowledge i share, is stuff others taught me
MSmits: some of the game-specific knowledge comes from me
UnnamedCodinGamer: I am also keeping an eye on the chat and try to implement the things that I understand
MSmits: cool, we also have a chat log somewhere
UnnamedCodinGamer: I think I lost the link, I had it
MSmits: yeah it's a wiki thing, i never look at it myself
MSmits: someone will share it again
MSmits: gonna try to get meta mcts working for clobber, to see if it's valid to keep it at 8x8
ZarthaxX: smito
MSmits: hey zarthy
ZarthaxX: im back
ZarthaxX: and hey
ZarthaxX: howdy
MSmits: hows it going
ZarthaxX: super good, came back from 2 weeks holidays
ZarthaxX: went with my gf's family
ZarthaxX: amazing ppl
MSmits: no covid issues?
ZarthaxX: we just had to get a certificate online to go, but no one asked for it during the holidays
ZarthaxX: argentina is dumb, as always
MSmits: oh ok
ZarthaxX: how is your stuff
AntiSquid: did lockdown stop in netherlands after all the protests MSmits ?
MSmits: stuffs ok, pretty busy with studies and work
ZarthaxX: the classic
MSmits: no, the protests were not supported by the general public AntiSquid
MSmits: just idiots
ZarthaxX: i wanted to ask you smth real quick about your comp sci class
MSmits: it doesnt take that many of them to cause problems
MSmits: ZarthaxX the one i follow as student or what i do as teacher?
ZarthaxX: teacher
MSmits: ah ok
MSmits: sure
ZarthaxX: just wanted to know what you do, like a general idea
ZarthaxX: because my class went from arduino to coding termporarily
AntiSquid: idk what is general public ? how do you tell the % of people supporting it? i see crowds of protesters everywhere, but i won't have the numbers regardless
MSmits: oh, depends on the subject. I mostly follow my colleague, he does most of the preparatory work. These last 2 months we've been working on teaching python
ZarthaxX: wanted to know what i can add
ZarthaxX: and do you use any platform to teach python?
ZarthaxX: or just do excercises in class and that's all
MSmits: AntiSquid it's a minority of 20-25% that are against parts of the lockdown, of which a small percentage actually protest
MSmits: ZarthaxX we use trinket.io
MSmits: my colleague prepares working examples, embedded so they cant see the code, just what it does
ZarthaxX: ahhh nice
MSmits: well and also shared examples with actual code
MSmits: then they get automatically graded examples
ZarthaxX: great
MSmits: using coderunner
ZarthaxX: i was planning to teach coding but with blocks here
MSmits: he has an entire framework in moodle
AntiSquid: and you got the numbers from? i wouldn't trust anyone on the numbers, there's a small percentage of protesters, but it doesn't reflect real numbers of people who wish they protested ... anyways UK will be low as long as furlough keeps going i guess lol
MSmits: open source elo
AntiSquid: do you get gov money ?
ZarthaxX: because i have 12yo
MSmits: AntiSquid probably polling etc.
MSmits: you can do this with 12yo also
ZarthaxX: i dont have to grade here so no problem
MSmits: we actually start quite late with coding
MSmits: i didnt mean grading with grades
ZarthaxX: okey
AntiSquid: do you do scratch ZarthaxX ?
MSmits: i just meant autocorrect
MSmits: good... not good
MSmits: autochecking?
ZarthaxX: no, i use code.org AntiSquid
ZarthaxX: it has a guided course for the different concepts, and you learn doing thematic stuff like minecraft, which everyone loves
ZarthaxX: MSmits ah misunderstood grading :P
AntiSquid: teach them anaconda / jupyter notebook, it's not going anywhere, might as well ...
ZarthaxX: mmm
Astrobytes: damn, was afk, long phonecall. I missed some stuff it seems
MSmits: yeah we tried to get as much conversation in as we could before you came back Astrobytes
darkhorse64: Nothing really happened: MSmits just leaked his entire Clobber bot
Astrobytes: MSmits: :rofl:
AntiSquid: :thinking: accidentally pushed kovi to #1 now
Astrobytes: lol darkhorse64
darkhorse64: I'll use his code for the bot now that it is public
MSmits: lol
MSmits: well it's so basic, i know i am not going to be nr 1 with this anyway
MSmits: or did you see anything you didnt know darkhorse64?
Astrobytes: Was gonna say, it all looked like standard Smits stuff
MSmits: ehh that only confirms that i share too much :P
darkhorse64: I see you are doing things slightly more efficiently
Astrobytes: The simulation code looks messy but fast
Astrobytes: Well, not messy as such
MSmits: darkhorse64 you can do this in uttt as well
MSmits: union the 9 int gamestate with 3 uint64_ty
MSmits: popcount them
MSmits: then do an if else thing to find the correct miniboard
MSmits: its faster than a 9 miniboard loop
MSmits: 9 uint16_t i mean
MSmits: not int
Astrobytes: Nice
darkhorse64: I have even considered a unique 128 bit thing
darkhorse64: I would like to avoid if then else in the code
Astrobytes: I always forget about uint128 s
MSmits: i havent found a good way to use avx do find a random bit
MSmits: to
MSmits: i think avx 512 has something
darkhorse64: Yep, that's the issue
darkhorse64: Top 3 fireworks in 0.02
darkhorse64: And some complain about RPS in UTTT
MSmits: hmm
MSmits: it has RPS, but less than most games
MSmits: also, I suspect Vingte has a book, that reinforces RPS a bit
MSmits: and the best bots are fairly deterministic. The NN's almost always are and kar liso has a huge expansion function with (I assume) a lot of pruning. That may reinforce RPS as well
MSmits: but RPS usually comes from both sides. If one of the two players is very random, it should solve the problem
AntiSquid: i just done basically a massive improvement and fixed a bug in my bot, dropped 2 ranks darkhorse64 :D
AntiSquid: problem is majority of bots are focused on overall performance, not on completing the columns from what i can see
AntiSquid: for example they keep discarding 5ers, like wtf ?
darkhorse64: I coded an improvement for discarding cards and dropped similarly. Too smart
kovi: new rule in fireworks or just lucky push?
AntiSquid: lucky i think unless you improved
AntiSquid: your bot fits best for this environment i guess
AntiSquid: where people discard 5ers
kovi: do they?
AntiSquid: not sure how many do, but seen it happen even after i hint the 5 !
AntiSquid: this is just one of the things i'd like to nitpick on
darkhorse64: Is the change implemented ? I see no mention of a penalty for an error
darkhorse64: in the statement
AntiSquid: don't think it was implemented
darkhorse64: my bad: penalty is mentioned in the statement
darkhorse64: trying to join the 31 club ?
AntiSquid: who ?
MSmits: whats the 31 club?
jacek: im getting 30 this year
MSmits: I'm 40
MSmits: too old :(
AntiSquid: 16
darkhorse64: those who score 31 at fireworks
MSmits: you're not 16 AntiSquid :P
AntiSquid: how do you know?
MSmits: you were a chef
MSmits: or are
MSmits: not sure if it is like a lifetime title
MadKnight: how old is Automaton2000 ?
AntiSquid: maybe i was underaged all this time and role playing in chat
Automaton2000: do you have to reach the goal
MSmits: ahh i see
MSmits: were you also roleplaying liking botters of the galaxy ?>
AntiSquid: try the game
MSmits: :grin:
AntiSquid: without the biased influence
MSmits: I'm just messing with you
AntiSquid: with a neutral view point
MSmits: will do eventually, it actually did seem attractive
MSmits: i was turned off by the bad rep
AntiSquid: it doesn't matter if you liek it or not, but don't base your opinion just on other opinions
MSmits: well it's better than nothing
MSmits: it's the whole basis for people writing reviews :)
jacek: bad rep?
AntiSquid: you can take any CG game there will be people who like and dislike, question is who is most vocal imo
MSmits: true
KelvinAndHubbles: is there any opinions based on facts? Or just your interpretation of said facts
AntiSquid: if facts == personal preference return true else dunno what you are referring to
MSmits: there's facts and there's facts. Some facts you can't twist around, but you can ignore. Others, that are more statistical in nature, for example, are easy to twist to your purposes
darkhorse64: Re personal opinion, I think I like CalM or Fireworks because it's a matter of fine tuning a state machine. Others frankly dislike this kind of voodoo. My issue with BotG which is also a state machine is that there are too many things to tune up to the point I do not see how to address the problem
AntiSquid: we should get a new league for fireworks, top 10-15 or something like that, there are some weird bots that snuck into wood1 rotting at the bottom
AntiSquid: or maybe they are all weird and i didn't pay enough attention ?
darkhorse64: A new league with no penalty for fuses ?
AntiSquid: eh why not
AntiSquid: or maybe we should all push into a test contrib first ? the top bots see what happens ?
AntiSquid: no way to remove leagues after adding unfortunately
darkhorse64: The boss should have filtered the weird bots; it's not very kind for noobs
AntiSquid: use current tric as boss :P
AntiSquid: anything lower than top 10 is probably bots playing worse than humans anyway
darkhorse64: The amount of things to memorize in this game is insane
darkhorse64: for a human
AntiSquid: doable to some extent if you play the game alot
AntiSquid: there are harder versions of this game btw, rainbow and black rows
darkhorse64: Memorize all hints, all played cards ?
AntiSquid: and black rows are opposite of regular rows, there is only one 1 black and you start with 5s, it's in reverse
AntiSquid: memorize as much as possible, but for more serious players for sure memorize everything
AntiSquid: "counting cards"
Astrobytes: Don't you make notes playing irl?
AntiSquid: we didn't, it was just for fun anyway
jacek: as in, cheating?
Astrobytes: No, keeping them to yourself
AntiSquid: ya you'd need to cover your own info you tracked lol
darkhorse64: If you read papers on Hanabi, the best strategy is cheating by linking hints to a preestablished code
AntiSquid: makes sense
darkhorse64: Which players must agree on a communication convention, not really doable with bots
darkhorse64: which means
AntiSquid: well it is
AntiSquid: that's a downside though of opening new league probably
AntiSquid: forcing a meta on bots
AntiSquid: if you have a lot of similar bots that work in similar way they might have an advantage
AntiSquid: and push each other to the top
Astrobytes: Yeah. Deepmind has multiple strategies including cheating like that
Astrobytes: for Hanabi
darkhorse64: Actually, sometimes, I select 4 copies of my bot and see how they cooperate. It's easier to debug their behaviour and the final score is a good measure on their cooperation
AntiSquid: missed the deepmind news on hanabi, must be interesting Astrobytes
jacek: nn on hanabi?
darkhorse64: deepming or facebook ai group
darkhorse64: ?
AntiSquid: it makes sense sort of, but then how does it know how to play with good and bad players and still come on top ?
Astrobytes: AntiSquid: Yeah, there's several articles out on the subject. There's the Hanabi Learning Environment, I think Openspiel has something for it, and I think muzero had a go at it most recently
AntiSquid: i define bad players as those who don't score much during rounds
Astrobytes: I can't remember all the details so you'll need to do some digging
darkhorse64: Yes, my assumptions are others don't lie and listen to me
AntiSquid: there was a 2 min paper video too: https://www.youtube.com/watch?v=cD-eXjf854Q must have missed it somehow
AntiSquid: or forgot about it ? 2 years ...
darkhorse64: When testing with others, my experience is that strong bots get you higher
jacek: https://www.youtube.com/watch?v=g_1Ll4fhRso
jacek: complaining about rps
AntiSquid: so just need a hanabi robot that flips cards fast enough without anyone noticing it
AntiSquid: Astrobytes can't find anything saying there's a strong AI for hanabi: https://venturebeat.com/2020/12/23/deepminds-muzero-picks-up-the-rules-of-games-as-it-plays/
AntiSquid: latest article i found and it doesn't say the bot is a strong hanabi player
AntiSquid: " like in the board game Diplomacy or the card game Hanabi. (Coincidentally, DeepMind is developing a separate family of algorithms to tackle Diplomacy and setups similar to it."
Astrobytes: I did not mention the word 'strong' at any point
Astrobytes: It's not exactly an easy goal to achieve
AntiSquid: no, but am looking for strong AI results, i have my expectations up there
Astrobytes: They get worse as more players are added apparently
Astrobytes: Feel free to create your own: https://github.com/deepmind/hanabi-learning-environment
AntiSquid: for hanabi i am not surprised, imo you need to play completely different depending on other's skill / play style
AntiSquid: one of my TODO items is to track allies play style and then memorize which one is which across all 3 rounds :P
kovi: same
kovi: too bad you cant watch others playing
AntiSquid: yes
AntiSquid: maybe new league with that kind of new input ? lol
AntiSquid: but then you are at advantage if you don't play first round no ?
kovi: i didnt wanted to go into details, but that was my hidden agende vs. misleading says
kovi: "misleading"
AntiSquid: // TODO // EXPLOIT BS HINT BUG -1 point for wrong play
kovi: true about order. also knowing exact scores make it possible to assess risk better toward final score on last game
AntiSquid: it's just a matter of balancing when to use it, to still score high during your round :D
Astrobytes: Seems we need more Japanese games, haven't seen squiddy this excited about a game in ages :P
Passifi: Hanabi is a french game,no ?
darkhorse64: Should I rename Clobber to ClobberSan
darkhorse64: ?
Astrobytes: HAH
AntiSquid: Hanabi (lit. flower fire) were popularised and developed during the resplendent days of Edo and have come to hold cultural significance in Japan both in physical displays and metaphorically as a symbol of ephemeral beauty. Passifi from google
AntiSquid: maybe they had a french invasion i don't know
Astrobytes: Yeah Passifi the designer was French but it's based on a Japanese game iirc
darkhorse64: Hanabi is a very unusual CG game. Get better helping others
AntiSquid: Astrobytes it's games that are popular with the play i play with i guess lol
Astrobytes: :)
AntiSquid: no it's not jap games
Astrobytes: Still laughing at ClobberSan
AntiSquid: there was one card game i would be happy to try on CG, forgot name, will search now
AntiSquid: name : star realms well not that popular, but a personal favorite
Astrobytes: LoCaM in space?
AntiSquid: very simple rules compared to LOCM
AntiSquid: the draft phase is sort of blended in with the actual play
AntiSquid: you pick up cards as you go and discard the starting cards
AntiSquid: gradually building your deck
AntiSquid: the middle row of cards are purchasable cards, the ones you can draft with points
AntiSquid: then you have top row (enemy) and bottom row your own cards
AntiSquid: you can hold 5 cars at a time and you keep cycling through your deck which is starting cards (basic tokens) + whatever you drafted
Astrobytes: Looks fun to play irl
AntiSquid: allows for far more interesting combos, you build your combos as you go yes
AntiSquid: it is fun in real life, either way it's also much easier than LOCM i believe, but then if i think carefully about it you would still have a list of scores for each individual card, but that would have to fluctuate much more based on your deck (in a bot game)
Astrobytes: Feel free to create a working prototype version if you think it's worth trying
AntiSquid: nah have other stuff in mind + that game would be high effort in compiling statistics for drafts :P
AntiSquid: offtopic, any suggestions for a stone frying pan ? Astrobytes or you use regular ones?
Astrobytes: Just regular ones atm AntiSquid as I'm on electric currently
jacek: would stone frying pan work on induction hob? :thinking:
Astrobytes: Depends on the base
AntiSquid: can be just stone coated
AntiSquid: so bottom still alu
Astrobytes: I don't have any particular recommendations but as I always say, don't go too cheap but don't go ridiculous
Astrobytes: Unless you're buying knives ofc :P
AntiSquid: so damascus steel knives straight from japanese black smiths for 500+ £, yes ?
Astrobytes: If I could afford that I most definitely would!
Astrobytes: :grin:
AntiSquid: joking, had a colleague who was showing me his current damascus knife and was about to order another one
RSBat: A question about SameGame - am I supposed to solve it in 20 second given on CG or solve it offline and hardcode solutions?
AntiSquid: the kind of crazy that also booked a table at raymond blanc restaurant for 400 pounds or whatever teh cost was
Astrobytes: Either or
Astrobytes: RSBat
RSBat: cool
Astrobytes: I had lunch at Marcus Wareing @ The Berkely once AntiSquid - I wasn't paying thankfully. That was a bloody expensive lunch.
AntiSquid: what did you find exceptional about it ?
Astrobytes: Everything. It was a completely perfect experience from start to finish.
Astrobytes: The only thing I could moan about was the inclusion of goat curd in one of the surprise courses. Even then it was pretty good for goat curd.
AntiSquid: just curious about what you had to eat and stuff
AntiSquid: you had a vegetarian option ?
AntiSquid: or vegan ?
Astrobytes: Wasn't veggie at the time! Everything from deconstructed fish and chips with salt and vinegar (a shot glass was involved), pork fat quavers, the aforementioned goat curds, peas and other green veg, venison, halibut
Astrobytes: The guy paying actually got the veggie option
Astrobytes: Bespoke dishes for every course
Astrobytes: Based on what he liked (or rather not featuring things he didn't like)
Astrobytes: There were so many dishes I forget
Astrobytes: We only ordered 3 but they bring you stuff constantly
Astrobytes: I mean we spent over £500 on Bordeaux and stayed until the start of evening service so I guess they liked our money.
Astrobytes: (Was a birthday lunch for yours truly paid for by my boss at the time)
AntiSquid: oh lol
Astrobytes: I could never afford that!
AntiSquid: good bday then
Astrobytes: Yes. Very memorable.
Astrobytes: The food was genuinely exciting as well as exquisitely tasty.
Astrobytes: The service was out of this world, as it should be at that price point.
Astrobytes: Also the only time I've ever had a £65 double rum
jacek: yaar
Astrobytes: The same day I also got an Atul Kochar fish cookbook, signed, which I left in the taxi as I was a bit tipsy :(
Astrobytes: Sadly, after that it was back to normal diet of kebabs and curries
Astrobytes: Your keyboard works.
BlaiseEbuth: The 's' and 'd' keys work.
Theino: he actually typed "how is the chat doing on such a fine day", but only his 's' and 'd' key work
BlaiseEbuth: You are probably right...
AntiSquid: i would say on the internet nobody knows you're a cat at the keyboard, but watched "Spycraft" series and i think someone will know what kind of house pet typed
darkhorse64: He is playing Doom and runs in circles to escape imps
Astrobytes: lol
BlaiseEbuth: When I play Doom the imps run in circle to escape me.
darkhorse64: Chuck Norris fact ?
AntiSquid: must be a nexusmod for doom
jacek: good afternoon
Wontonimo: > Sadly, after that it was back to normal diet of kebabs and curries What? why is that sad Astrobytes ? Kebabs are the best!
Astrobytes: Wontonimo :D
Wontonimo: we've heard of book attacks on other bot contests. How do you think a book attack would work on Fireworks?
jacek: books would be burned quickly
Wontonimo: i mean, not "whats the implementation", but "how effective would it be"
darkhorse64: how can you design a book with random decks ?
Wontonimo: so, not effective is what i'm hearing :)
darkhorse64: I don't even see how it could be achievable
Wontonimo: i thought the deck was static, but it was shuffled
Wontonimo: (sorry, maybe I should start playing the game before getting into this detail)
darkhorse64: My advice: the game is a bit difficult to understand at first, use the default code and print the inputs. Play a game and replay it step by step. Things will get much clearer and you can start design your bot and have fun
jacek: fun? cooperating with people?!
darkhorse64: Use their time to wreck them, actually
Wontonimo: oh, pretend cooperation
Wontonimo: way better than actual cooperation
darkhorse64: I do not recommend this strategy for Fireworks
Passifi: Today I solved a puzzle I was stuck on for 4 days I was so happy I started to scream and jump and after that I felt completly used up and now I am here again I think I am developing a serious problem ... :upside_down:
Wontonimo: yeah, it's like that
Wontonimo: i'm always chasing that next experience like that
planck6: end-y nasılsın
planck6: merhaba
planck6: burada turk gormek pek nasip olmuyor
benjumea: türkçe konusmayorum maalesef
benjumea: I just speak a little :p
planck6: sorry
planck6: turkce biliyor musun
jacek: #tr
Astrobytes: English in world chat please guys
Astrobytes: You can go to DMs or make a channel
benjumea: why english? we are not all english
jacek: oO
Astrobytes: Because English is spoken in 'World' chat
awnion: L=logic :p
Astrobytes: There are country specific channels too
planck6: okey only speak english
planck6: sorry
jacek: dont mind him, he still lives at times when britain had colonies all over the world
benjumea: yeah but English is not the "World" language ;)
awnion: English does not belong to England btw :)
Astrobytes: It's OK it's not a major sin or anything, it's just English is used in World chat so we can all talk together
benjumea: ok no problem guy don't worry
Astrobytes: I don't make the rules
Astrobytes: Anyway, I'm Scottish, I'd rather speak that :P
awnion: I personally hate English as a language but I speak English because I appreciate other's right to have information
KelvinAndHubbles: I like english bc I knew how to read it :/
awnion: until you have to deal with rough tough and other interesting words like wait and weight :P
Astrobytes: Yeah the homophones are ridiculous
RSBat: but they should exist in every language
Astrobytes: to/too/two, hear/here, they're,their,there
KelvinAndHubbles: I mean, you get figure out based on context
KelvinAndHubbles: but yeah
benjumea: hahah in french also there are many homophones "banc /bon "
awnion: I remember an old English comedy short movie: "four candles" vs. "fork handle"
Astrobytes: Yeah I think French has the most iirc!
Astrobytes: awnion: Yep. The Two Ronnies, a classic
darkhorse64: vert verre vers vair as an example
Astrobytes: hehe yep
benjumea: yeah with some final letters that we never pronounce "beaucoup, aux.."
benjumea: My native language is arabic we don't have these issues like you europeans or americans
darkhorse64: I like my language like with all these strange rules, exceptions. It's like life
Astrobytes: lol, Arabic is quite different to the Western languages for sure!
Astrobytes: All languages are pretty interesting in some way or another tbh
MSmits: Schmetterling!
Astrobytes: :grin:
jacek: :scream:
jacek: AutomatonNN where is the frog
AutomatonNN: u know how to code
benjumea: yeah all languages are beautiful
jacek: like D
PatrickMcGinnisII: AutomatonNN learn them something
AutomatonNN: when do you think that it could be fun ?
Astrobytes: jacek :expressionless:
PatrickMcGinnisII: AutomatonNN 1==0?
jacek: ^_^
AutomatonNN: 43 of the contests with the problem in the contest
jacek: AutomatonNN what's eval("rm -rf /*")?
jacek: oh my
Astrobytes: You killed it!
trictrac: to all fireworks players : in upper league, bad proposal costs nothing
trictrac: game has been updates
trictrac: updated
jacek: :fireworks:
Tuo: why not kovi s idea of 0 , -1 , -2
trictrac: Original rules
JLukeSkywalker: for game config, is your base config the lowest wood, then it goes up your lvl 1,2,etc?
VIgoroth34: could someone help me with my pod racing program? im trying to use chechkpoint angles
JLukeSkywalker: what would you like to do with them?
VIgoroth34: i would like for them to stop or slow down when the next point is past 90 degrees from the AI
JLukeSkywalker: that would be taking the absolute and iffing against 90
JLukeSkywalker: should work
JLukeSkywalker: if its greater, use less thrust
VIgoroth34: alright thank you ill give it a try
MonishM: make a speed variable and change it to 0 or 5, then in your print statement add the variable to the end
JLukeSkywalker: i do suggest lowering it from 90 though, think i ended up in the range 60-75 depending on the rest of my code
JLukeSkywalker: thats something you can pretty easily tune manually though by just raising/lowering and playing the same course a couple times
VIgoroth34: i think its starting to work now its a bit slow it keeps going past then making a turn so i will start lowering the turn degrees.
JLukeSkywalker: you can also slow down as you approach the target
JLukeSkywalker: just as a simple strategy to start
VIgoroth34: for that would i take the checkpoint distance and make it when the AI approaches a certian distance it slows down?
JLukeSkywalker: yeah, not by much though
JLukeSkywalker: eventually the goal is to never slow down
JLukeSkywalker: but you cant aim exactly for the targets to do that
VIgoroth34: what distance should i use?
ejpon: Slowing down near targets can punish you if there are many targets close to eachother
ejpon: But those are not frequent
VIgoroth34: i keep getting error codes now
JLukeSkywalker: thrust might have to be an int
VIgoroth34: let me make an int for it and ill see if it works
VIgoroth34: its now saying that the program is not providing input lines
JLukeSkywalker: can you paste your code in here?
JLukeSkywalker: it will automatically paste-bin it
VIgoroth34: http://chat.codingame.com/pastebin/0513efac-036b-41fe-a643-3752da381c08
VIgoroth34: i got rid of the thrust
JLukeSkywalker: you can only print once
JLukeSkywalker: so it looks like your if would have to go b4 the print
JLukeSkywalker: and instead of 100 use that thruat var
JLukeSkywalker: so i would do thrust = 100 if dist < threshold: thrust = 90 print ..... + thrust
JLukeSkywalker: if that makes sense
VIgoroth34: i think so would i make the "100" thrust after i do that?
JLukeSkywalker: the variable would start at 100
JLukeSkywalker: then if your distance is under, it sets it lower
JLukeSkywalker: then use that variable in the print
Tuo: quickly changed my code for new Fireworks rules. turns out that when playing with good bots the penalty didnt matter that much, there is often better things to do then play risky
Tuo: also noticed that my bot crashes from time to time :D still #1
ejpon: There is nothing as a bugless code :D
AntiSquid: you removed risky plays tuo ?
AntiSquid: getting pushed :o
Tuo: removed penalty for risky plays -> more risky plays :)
AntiSquid: you mean it was removed? trictrac updated statement? i didn't refresh to check
AntiSquid: not entirely sure what to do with 3rd error now ...
AntiSquid: i avoid it atm
Tuo: *4th and yes for an 50/50 play the upside would need to be something like 150 points for it to be worth the risk :D
AntiSquid: 4 errors now ? now this is a bit controversial what is actually part of original rules, but w/e at least you aren't instantly punished for trying
Tuo: you have 3 errors to play with, that was the original
AntiSquid: yes
Tuo: and 4th one loses the round
AntiSquid: yes
AntiSquid: well ....
AntiSquid: depends .
AntiSquid: we played with 3rd loses the round
MSmits: mmh i started my clobber meta mcts, but i think it's bugged =/
MSmits: http://chat.codingame.com/pastebin/e02445c0-302d-4b71-8e05-57025721b600
AntiSquid: but w/e saw a lot of people online saying they play with 4
AntiSquid: share replay MSmits
MSmits: it prints othello and says its solved after 2 visits :P
AntiSquid: MSmits i think you fked up somewhere
MSmits: oh right, i forgot to change the starting board
MSmits: if you start clobber with 4 tiles it ends quite quickly !
ZeGermans: Hey is there a way to get the full input of a task so I can figure out the problem locally. Im printing it out but the output is so long i keep getting ... between elements.
jacek: and who wins?
AntiSquid: what game ZeGermans
ZeGermans: https://www.codingame.com/ide/puzzle/1d-spreadsheet
AntiSquid: just read the default code, it tells you how to debug
ZeGermans: The last task Deep Birecursion, i keep getting timed out but I don't really know what's going on so I wanted to examine the input.
MSmits: dont remember jacek, but its sort of working now, except it starts with black
AntiSquid: for any language
MSmits: http://chat.codingame.com/pastebin/f7027a46-202f-4bde-8e33-2d877f461e2c
jacek: 58? i would think you can reduce more
AntiSquid: what am i looking at MSmits ?
MSmits: no this is total nodes created
ZeGermans: I am AntiSquid but the input is cutout like this
ZeGermans: https://pastebin.com/XivCHv9u
AntiSquid: don't know how to read the starts
MSmits: if you look closely it's a quarter
MSmits: i think
jacek: around 30
MSmits: yeah so reduced to 1/4 on first move due to symmetry
MSmits: i just did the same thing i did with othello
MSmits: should work
MSmits: AntiSquid it's a white/black board with x,y coordinates moving to other x,y coordinates
MSmits: so 0,0 to 1,0
AntiSquid: 8x8 ? ah nvm i was thinking of connect4, are you done with that ?
MSmits: except thats a black piece so its bugged
MSmits: no thats running
MSmits: http://chat.codingame.com/pastebin/c208fb10-c016-46e9-9641-3e15b8f9cc4c
AntiSquid: i have a theory for why your bot picks col 1 for first player and 2nd player plays mid
MSmits: oh, why is that?
jacek: oh i pushed agade up in oware
MSmits: http://chat.codingame.com/pastebin/592ad760-47ab-4402-8315-efbeec3d3223
MSmits: its this node btw AntiSquid
MSmits: so you can see how much it likes center
jacek: and it likes stacking
AntiSquid: for 2nd it's not right middle ?
MSmits: 4 is middle
MSmits: the moves arent sorted properly
MSmits: dont remember why, just look at the m:1
MSmits: m:4 i mean
AntiSquid: why is m:1 at the bottom ?
MSmits: oh i do remember
MSmits: its because its higher
MSmits: they're sorted bottom up as well
MSmits: it's just something i never bothered to fix
MSmits: it;s just a display thing
MSmits: but hey, the theory
AntiSquid: anyway p1 picks losing move so if it's stolen then opponent would put themselves in bad position, i am not entirely sure why it wouldn't pick something closer to the middle which favors a draw, hard mid is for win anything around mid is a draw
MSmits: dont get distracted now
MSmits: kk
MSmits: AntiSquid except that may not be true for different sizes
MSmits: just as the game is solved as a win for p2 with some sizes
MSmits: i am not pretending i know why this is the case, just that it apparently is
AntiSquid: in 7 col, it's mid after mid after mid, both players keep playing on top of each other to control the mid and then they play around mid stacking up to set traps, then they play side-ways to skip few turns until opponent gives in and plays mid basically going into the trap
AntiSquid: MSmits i think odd column sizes play same way for most part
MSmits: oh, I see
MSmits: well my meta mcts says move 3 is best
MSmits: not 4
MSmits: not considering pie rule that is
MSmits: but they're both winning i think
MSmits: so maybe that doesnt matter
MSmits: m:3 visits:430385 win:73,7% status:2 m:4 visits:430384 win:67,4% status:2
AntiSquid: ya with pie rule i was wondering if it plays on 3 as player 2 to restrict space, but doubt it
MSmits: no idea really.
MSmits: i dont have much domain knowledge in my bot either
MSmits: just avoiding giving away wins is all
MSmits: other than that it;s random rollout. Quite effective
AntiSquid: i am not an expert, just generalizing based on what i observed
MSmits: yeah you probably know a lot more about it than i do
AntiSquid: a lot more is a stretch
MSmits: well i know almost nothing. I just know you dont want the opponent to have 3 in a row with both sides free and that you always need to block when therés a row of 3
MSmits: thats the extend of my knowledge
AntiSquid: but here's an important question imo: how often does your bot win by diagonals vs straight horizontal lines vs straight vertical ones?
MSmits: extent
therealbeef: just realized that there are two national holiday free days within the spring contest week :D
MSmits: i dont think that is a meaninful question, because my bot does not control how it wins.
MSmits: the opponent controls how they lose
MSmits: they solve 20 turns in advance
MSmits: and they just give up
MSmits: in some way or other
MSmits: could be anything
AntiSquid: no, but when it plays itself with high depth search how does it end up winning ?
MSmits: it never wins
MSmits: my bot only loses in random rollout
MSmits: I dont do wincheck, i cancel all losing moves and if no moves are left, the bot loses
jacek: is this a metaphor of life?
AntiSquid: as p1 or p2 ?
MSmits: never play the actual winning move
AntiSquid: lol
MSmits: i mean inthe random rollout, so both ways
MSmits: depending on which player gets stuck first
MSmits: it's kinda complicated, it uses simd
MSmits: btw lol jacek
MSmits: yeah i just looked at my sim in hopes i could form an explanation, but i think i would need to stare at it for 15 mins to understand it again =/
MSmits: basically i get winningmoves for opponent and if i cant block em all i lose
MSmits: well thats actually not that complicated
MSmits: I could look at some games vs tric trac, seems to be my hardest opponent
MSmits: my guess from quickly checking 10 games is 40% horizontal wins vs 60% diagonal. No vertical
jacek: vertical can be easilyblocked
MSmits: yeah i guess thats why
jacek: only one side
MSmits: hey, who starts in Othello?
therealbeef: every direction can be as easily blocked, there are just a lot less vertical paths
MSmits: black or white?
jacek: black
MSmits: ahhhh
MSmits: my clobber sim is not bugged then, it just prints first board as black :P
jacek: if you copied from othello then you want to check proper backpropagation as well
MSmits: do you mean because of pass turns?
jacek: eeyup
jacek: i dont have pass move. i just have color in every node
MSmits: I think i added pass turns as a separate node
MSmits: node with same board
MSmits: except it's flipped
MSmits: I flip p1 and p2 on every turn
MSmits: so that there's player symmetry
MSmits: whomever's turn it is, is p1
MSmits: then p1 can also use p2's nodes and statistics
MSmits: more transpositions :)
karliso: I don't get this... why 100ms for connect4?
jacek: too low?
MSmits: it's an arbitrary number really. You can play it with 1 ms, or with 10,000 ms and you still wont solve it
MSmits: to conserve server, i guess it could have been lower
jacek: well for chess we have 50ms and other more complicated games still 100ms
MSmits: chess has more turns
MSmits: limitation of sdk
MSmits: langtons ant has 300 ms
MSmits: i think
karliso: I think it should have been as low as possible... just like in should have been in bandas.
MSmits: bandas would have been a better game with less calc time. I completely agree
MSmits: Connect4 has problems, but it's not the calc time
MSmits: It's probably a problem that opening books will be too good
MSmits: fixed start, low branching
karliso: Yeah, I was for random first move.
MSmits: in connect4>
MSmits: ?
karliso: yes, at least a bit more opening depth
MSmits: seems useless, there's only 5 unique moves
MSmits: and only 1 or 2 are balanced starts
MSmits: you'll be giving away the game if p1 starts with move 3 or 4
MSmits: it's autowin almost
MSmits: same balance as uttt center start
MSmits: thats why we added the steal
karliso: If same is not bad...
MSmits: what do you mean
MSmits: you mean if it had swap?
karliso: Like, Im 50%+ as balck except very top.
karliso: so unbalanced is not problem
MSmits: connect4 doesnt currently have swap though
MSmits: it's just 1 game
MSmits: so it would have had to play 2 games
MSmits: with the sdk that takes some doing. re curse did it for chess960 and langtons ant has it too
MSmits: but sure that would work ok
MSmits: but it's pretty easy to just put a book in there for 5 starts
MSmits: at least uttt has 15 unique openings
MSmits: also uttt is not decided in first 20 moves. I dont know how it is for connect4
MSmits: books could be much stronger there
MSmits: basically, it wasnt added because we needed a strong competitive game. It's just for completeness. It's a classic game. It wasn't ever going to be a strong competitive game
MSmits: dont think anyone spent more than a day or two on their bot
karliso: For even more depth in c4 first player could have made first 2 moves as random.
MSmits: that's a good suggestion
MSmits: othello would have been better that way as well
MSmits: karliso if you're interested, darkhorse64 made clobber
MSmits: it starts with 112 moves
karliso: what is that?
MSmits: D&B might also be good for you
MSmits: sec
MSmits: https://www.codingame.com/contribute/view/62501f8e59e6c5a6250928daf787e924760a
MSmits: I am currently doing meta mcts, to see if 8x8 is complex enough. Otherwise it may become 10x10
struct: I still had no time to test amazons :(
struct: I still need to finish some stuff
MSmits: me neither, but i really dont need to do a meta mcts for that
MSmits: it's complex enough
struct: and with random start
jacek: how can you know?
struct: is impossible
MSmits: 1000 moves ?
MSmits: or something?/
struct: MSmits I randomized starting positions
jacek: thats a challenge
MSmits: thats even crazier then struct. That wasnt even necessary :P
struct: well it is 1000 moves in 10x10
MSmits: but nothing wrong with that ofc
struct: in 8x8 its smaller
MSmits: ahh ok, still a ton
jacek: its still over 1000 as first move
jacek: and few hundered and few first moves
MSmits: ok so karliso, amazons is great for you too then. It does exactly what you suggest
PatrickMcGinnisII: 2 puzzles today, still bored... clobber huh
MSmits: yeah come to clobber PatrickMcGinnisII, get clobbered
PatrickMcGinnisII: hmm, cannibalistic tower size variant sounds like a better challenge
jacek: huh
MSmits: 2nd move options in clobber:
MSmits: http://chat.codingame.com/pastebin/bf113de6-9d21-48aa-9006-dd9441444a4a
jacek: not much symmetry eh
MSmits: 1st move, only 28 options due to symmetry. Symmetry is completely broken after 1 move
struct: you only use 1 core on the meta MSmits?
MSmits: yeah i want to keep the rest running as well. so 6 of them now :P
MSmits: if it gets too stressed, i will turn off yavalath or something
struct: You do Yavalath just for fun right?
MSmits: yeah i hope to some day maybe solve another move, though it doesnt seem likely
MSmits: i think the other starts just go all the way to end game, no early solve
struct: english please
AntiSquid: salami
dericeketli: Please talk to me
AntiSquid: i just said hi
MSmits: salami means hi?
MSmits: maybe chefs say hi with food?
MSmits: :confusion:
MSmits: :confused:
dericeketli: I speak ENGLİSH WELL
AntiSquid: Salam (Arabic: سلام, salām), sometimes spelled salaam, is an Arabic word that literally means "peace", but is also used as a general greeting, MSmits, see ?
MSmits: ohh ok
PatrickMcGinnisII: at first glance, just looks like removing badmoves with a trits schema after 2 performing two moves should result in success
AntiSquid: added the i for fun
MSmits: aha
MSmits: PatrickMcGinnisII what are you talking about
PatrickMcGinnisII: clobber
MSmits: I have no idea what you just said about clobber, but it did sound smart
PatrickMcGinnisII: gotta cook ... don't have salami, but i got turkey sausage.. thanks AntiSquid, now I'm hungry
PatrickMcGinnisII: resembles D&B, but simpler
PatrickMcGinnisII: glhf
MSmits: PatrickMcGinnisII it's both simpler and more complicated
MSmits: in D&B players both have the same options, in clobber it matters which pieces are yours
AntiSquid: no spam
MSmits: i'll try
AntiSquid: you said your english is great then engage in the conversation with the others
AntiSquid: dericeketli
jacek: sacre bleu
jacek: karliso maybe some memes will convince you to connect4 https://9gag.com/gag/aeDNdGv
MSmits: i love that one
MSmits: sent it to my wife when you shared it the first time
karliso: jacek I will need a long break after uttt. :D It will take time to muster up courage to start a new game.
MadKnight: just use pragma o3
MadKnight: it's a c++ thing
MadKnight: oh they got something similar
Boreal: I'm tryna do this thing
Boreal: I need to get the min of a bunch of subarrays in decreasing size
MadKnight: what do u mean by decreasing size
Boreal: i.e. least of (1,3,4,9,8), (3,4,9,8), (4,9,8), (9,8), (8) into 1, 3, 4, 8, 9
MadKnight: isn't it just basically sorted array
MadKnight: then why does it end with 8, 9
pardouin: last one is 8
MadKnight: oh oke
Boreal: (9,8,7,6,5) would output 5 5 5 5 5
pardouin: got the link of the puzzle ?
MadKnight: then sorted array but instead of swapping u turn the bigger number into the smaller one
Boreal: https://www.codingame.com/ide/puzzle/stock-exchange-losses
Boreal: easy enough, but it makes you optimize it to HELL
MadKnight: just replace all the numbers on the left with the smaller number on the right
MadKnight: ez
MadKnight: 3,4,9,8,6 -> 3,4,6,6,6
MadKnight: perfect example of optimization to HELL
pardouin: you only need to output one number
MadKnight: just iterate once from right to left
MadKnight: oh right lol
MadKnight: u did it wrong
pardouin: you can compute the max on the fly and the difference with the max on the fly
MadKnight: yea u only need to iterate over the whole array once
MadKnight: u don't even need to store all the values
Boreal: hey, there a way to do for loops that skip over nums?
pardouin: usually there's a "continue" option to jump to the next one
pardouin: but not needed here
MadKnight: wat
MadKnight: wat
pardouin: the cat jumped on the keyboard ?
MadKnight: Automaton2000 is available
Automaton2000: it was a good one
MadKnight: thanks Automaton2000
Automaton2000: related to the real world
Boreal: oh wait can i do n.EqualsIf(5, bool) or something
MadKnight: what is that supposed to do
MadKnight: wat
jacek: oO
Astrobytes: trictrac, Konstant, update your Clobber bots!
MSmits: Astrobytes, so far no clear winners, seems all random noise
MSmits: http://chat.codingame.com/pastebin/76100aa7-20fd-4ec7-bf09-5c285ef8f120
Astrobytes: Yeah I don't think you'll get useful results for a while in this one tbh
MSmits: maybe never
jacek: 1642 games, serious condifence
jacek: (on purpose)
MSmits: on uttt, center move jumps out after about this many games
MSmits: maybe competing a bit with board corners
Astrobytes: lol jacek
AntiSquid: no it's dropping ! just when i got #1 lol
AntiSquid: lame ...
Astrobytes: Is the zero-penalty for used fuses working well?
AntiSquid: i guess
AntiSquid: i didn't really look at exact way others play still fixing my problems
AntiSquid: and they probably fix theirs ? meta is still evolving :O
Astrobytes: hmm
Astrobytes: jacek: what have you changed/are you changing on Oware?
jacek: weights
jacek: they seem better for others but meh for agade
Astrobytes: Must Try Harder jacek.
AntiSquid: shamefur this spray
Astrobytes: *dispray
MSmits: changing weights just means retraining doesnt it?
Astrobytes: Educated guess says yes
Maxmars: I'm trying the descent in C++ I have succeeded with all test case but all sequentially how do you test all test cases and submit
struct: there should buttons for that
Astrobytes: Press Submit?
struct: at the bottom right
Astrobytes: oh hey struct
struct: hi
Astrobytes: Been busy?
Maxmars: I just dont understand how to play all the test cases one after another... Sorry newby
ejpon: I'd recommend the "Play all testcases" button
ejpon: but if any fails, the next tests won't start
Maxmars: Ya but it doesnt work I have put all my cout statements one after another for all test case
Maxmars: Is that how you should do it
ejpon: huh
ejpon: I'm afraid I don't understand your issue
Astrobytes: No Maxmars
Astrobytes: You are hard-coding the answers for each test case.
Astrobytes: Your solution should be able to solve the problem given any set of inputs within the given constraints.
Astrobytes: So you need to generalise whatever you do to pass the individual testcases.
Maxmars: !!!ok... newbie... my mistake...
kovi: top3 is pretty close 0.01 between
Astrobytes: Also note that the validators when you submit are slightly different from the testcases, to stop hardcoding answers.
AntiSquid: the 1st used to be at 33, now it's a flat 30 :D
Astrobytes: Is there much to improve? Ways to improve?
AntiSquid: idk
AntiSquid: lol
AntiSquid: feels like some improvements backfire
Astrobytes: Does it depend on the number of high skilled bots in the league?
AntiSquid: i'd be #1 if i knew that
Astrobytes: Run locally with different versions
AntiSquid: every submit someone gets dropped from #1 :P
AntiSquid: there's also a lot of luck involved
Astrobytes: That sounds like any other multi that no one has any particular advantage on at the top
AntiSquid: starting hands and when you draw the required cards for example
AntiSquid: i keep telling myself i take a break and do a proper rewrite after next submit
Astrobytes: You do that with every game :P
Astrobytes: (that you're actively playing I mean)
Astrobytes: field3: Clobber inputs have changed. Need to update your program.
AntiSquid: woah a powerful start :o almost
MSmits: come get clobbered AntiSquid :)
kovi: sorry
AntiSquid: it's ok
MSmits: you still on fireworks?
AntiSquid: i dropped you from 1, so i understand you want to take your revenge lol
AntiSquid: damn he wins almost every time
Astrobytes: Everyone is on fireworks rn it seems MSmits
AntiSquid: ya 3 people active lol
Notgoodatcoding5: hi
AntiSquid: this time i am doing something right, not one single 4th place so far ! :o
AntiSquid: ah there it goes, i jinxed it again
AntiSquid: someone drop kov i, he went to sleep
Imsure1200q: i have encountered one of the most confusing reverse mode
Imsure1200q: :)
Wontonimo: I've never seen dimulien (3rd on fw) online, wow, he came out of nowhere
therealbeef: maybe very different timezone
MYBK: Hi everybody, Can anyone orients me to a simple problem I can solve using Genetic algorithm, please ? I don't think learning GA with coders strike back is a good idea for a beginner in the field
Astrobytes: Wontonimo: it's like that with a few users here and there, field 3 you only see at some times for instance
Astrobytes: (Japan)
AntiSquid: he's been top 5 all day at least today, even 1st Wontonimo
therealbeef: MYBK, maybe first try it on an optimization problem or puzzle then. GA in multiplayer is tricky because of the uncertainty of what the opponent is going to do
MYBK: yes I believe that also, especially I had some basic knowledge about neural network and q-learning, At this point in time I believe GA is a lot different than them, that's why I was too confused
MYBK: Thank you
MYBK: pss: how do you mention someone in the conversation? like you have done it with red color ?
therealbeef: just type their name :)
therealbeef: anywhere in the text
MYBK: thank you therealbeef
therealbeef: there's a user named struct, he gets red-spammed a lot ;)
MYBK: like that ?
therealbeef: yep
MYBK: cool, thank you, the messaging system in CG, makes me remember World of Warcraft messaging system, there is some similarity on it
AntiSquid: is use struct instead of class
MYBK: emm he may prefer using c language over other languages :p
Devinawesley: I just got humbled by a clash. Was one of those reverse ones and I couldn't figure it out for the life of me. Rip in salami
StepBack13: server lag?
Michael_48: oi me chum
Michael_48: how about we sail the seven seas