Chat:World/2020-04-03
ZarthaxX: i think there are magic numbers that can do that
ZarthaxX: google it
Nanosplitter: I can't find anything about magic numbers and bit flipping. All I see about magic numbers are "don't use magic numbers"
ZarthaxX: lol
ZarthaxX: never tried that
ZarthaxX: https://stackoverflow.com/questions/25750844/how-can-i-shuffle-bits-efficiently
ZarthaxX: i saw that page linked in answer
ZarthaxX: it's crazy
Nanosplitter: I'll work on trying to understand that, thank you lol
Nanosplitter: Still new to doing bit stuff
ZarthaxX: yeah well, bit permutation is not smth i tried ever
ZarthaxX: there is byte permutation
ZarthaxX: but that's smth else
ZarthaxX: way simplerlol
Nanosplitter: lmao
superfx12: Maybe using a mask?
Nanosplitter: superfx12 What do you mean?
Nanosplitter: My friend just sent me this: https://pastebin.com/zyS2C1Dr
Nanosplitter: I haven't tested it yet, but seems like it may work
superfx12: http://chat.codingame.com/pastebin/723857fc-6864-4c2c-a496-542d2b093ca2
superfx12: then you could do AND 0011100 again to get the reversed
ZarthaxX: that's just inverting the bits
superfx12: And do AND 1100011 to get the res
ZarthaxX: 00101 , i want to reverse that so 10100, but u are saying 11010
superfx12: It was an exemple let me write it up in a doc tahn paste it here
ZarthaxX: it wont work but ok
Nanosplitter: Yeah, I'm wanting to reverse the bits, not flip them
superfx12: Oh okay I think I understand, yep it wont work
ZarthaxX: aaaaand f
eulerscheZahl: and 0xF?
ZarthaxX: funny
ZarthaxX: is there a mod on? i need someone to get hammered
eulerscheZahl: i think my chat history doesn't go far enough to guess who it is
eulerscheZahl: oh, Radewoosh was online that night
ZarthaxX: i meant you lol
ZarthaxX: :(
eulerscheZahl: :P
eulerscheZahl: illedan climbed a lot during the night
ZarthaxX: yes, impressive
dbdr: it's as if he knew the game well
kovi: radewoosh is still here
eulerscheZahl: indeed, submitting
dbdr: what about him?
eulerscheZahl: a legendary grandmaster on codeforces
ZarthaxX: a god basically
kovi: yep
dbdr: ok :)
kovi: also was 2nd on locam sprint here
dbdr: btw, is errichto a top player somewhere?
kovi: yes, topcoder
eulerscheZahl: codeforces, codejam
kovi: and i think hashcode
eulerscheZahl: http://eulerschezahl.herokuapp.com/codejam/search/Errichto
dbdr: wow, you coded a tool for codejam too :)
eulerscheZahl: there is no user search on codejam
eulerscheZahl: there was another site to search for users but they stopped indexing newer contests
dbdr: that's the problem with these tools, hard to maintain long term
kovi: almost equality on top again
dbdr: yeah, was just looking
dbdr: top 2 a bit apart, but less than before, and variant for sure
dbdr: we'll see a bit better when gold opens, to some extent
kovi: im slowly running out of good ideas i mean most of them didnt help
Zandy156: Wow .52 below bronze boss. I was planning on comparing code with my next submit, but I don't think I can now.
eulerscheZahl: i still have a few points, my mine avoidance is still pretty poor
kovi: (at least less than how competition improved)
eulerscheZahl: but after that i'll struggle to improve as well
kovi: i really wonder on gold recalc. even after 3 resub i cant tell the stance atm
dbdr: legend is again sth like double of gold
Zandy156: Is silence generally less effective at high rank? Or is frequent silencing still part of good strategies?
eulerscheZahl: you need some silence for sure
eulerscheZahl: not spamming, you need to find a balance
eulerscheZahl: i think SONAR is the least important
dbdr: "as little as possible, but not less"
thibpat: Hello :wave: I'm live streaming my Ocean of Code progress https://twitch.tv/thibpat
dbdr: my #6 bot loses to defaultAI :thinking:
dbdr: https://www.codingame.com/share-replay/444877537
AntiSquid: RPS
dbdr: a bot whose first move is to surface Search Results Web results
🤦
dbdr: copy paste fail :D
eulerscheZahl: defaultAI is pretty strong, would reach silver without SURFACE
dbdr: eulerscheZahl is he strong?
eulerscheZahl: kidding, defaultAI is a noob
dbdr: according to my tracker, he hit me perfectly when he had 43 possible locations for me
dbdr: so just got spuer lucky?
eulerscheZahl: targets the first possible location
eulerscheZahl: lucky
Csipcsirip: maybe he has a more advanced tracker :p
dbdr: ah, so top left is a bad place to be
eulerscheZahl: it has a tracker but doesn't know the exact position of course
dbdr: checks out
eulerscheZahl: exactly :D
kovi: silence0 is skipped probably
eulerscheZahl: yeah, defaultAI doesn't know silence
kovi: i mean, it maynot track silence at all
eulerscheZahl: uses it but doesn't track opponent
eulerscheZahl: and assumes top left corner initially
dbdr: right, i used silence 0 here
dbdr: the gods were against me in this one
kovi: you need to add some variation early to avoid easy death to silver newbies
kovi: force variation
kovi: may not be true for higher leagues
eulerscheZahl: in legend that problem will fix itself
dbdr: thanks, I'll see if it's needed
dbdr: after gold
dbdr: yeah
eulerscheZahl: and gold is near
eulerscheZahl: spoiler: we are in
kovi: siman took the lead
eulerscheZahl: and he pushed me back to #4
eulerscheZahl: after kovi dropped me
dbdr: did Csipcsirip share his joke with you kovi?
kovi: not yet
eulerscheZahl: a hungarian joke?
dbdr: yeah
eulerscheZahl: then i won't get it :(
dbdr: siman means something in hungarian
eulerscheZahl: smooth
Csipcsirip: mm not exactly it means easily.
dbdr: yeah, it's kind of slang in that meaning isn't it?
eulerscheZahl: and then there is this user: https://www.codingame.com/profile/447f8455a69ee26e0e6df8833f5684519084261 not sure if one has to be german to consider it a bad choice
Csipcsirip: yes
Csipcsirip: szerinted valaki meg fogja előzni kovit? szerintem siman! it was the joke btw :p
dbdr: it's very good :)
eulerscheZahl: kovit = declinated kovi?
dbdr: yes, object
eulerscheZahl: accusative
eulerscheZahl: or whatever cases you have in the Hungarian language
dbdr: now now, let's not accuse kovi of anything too bad
emh: Csipcsirip I thought it was dothraki
eulerscheZahl: you only have subject and object, not a range of different cases?
dbdr: but you're right, that's the linguistic term
kovi: nice one csip
dbdr: a lot more suffixes
eulerscheZahl: i'm used to those from Latin
dbdr: you can say a whole sentence in hungarian with a single word
kovi: en forditva szoktam mondogatni siman megnyertem ezt a jatszmat
dbdr: especially since "is" is left implicit
dbdr: take a word, add suffixes for direction, posession, object, plural
dbdr: that's at least 4, might be possible to do more
dbdr: native speakers? kovi Csipcsirip?
Csipcsirip: yes
dbdr: i mean you can add all 4 suffixes at the same time
kovi: there must be just a few nonnative hungarian speakers...
dbdr: 33% on the chat right now ;)
eulerscheZahl: motivation to learn it is low, when you don't live there
Illedan: Morning
dbdr: sure
dbdr: nice progression Illedan!
eulerscheZahl: congrats for getting a working bot Illedan
Illedan: :rocket:
dbdr: working = top 20 right? ;)
emh: so Hungarian is ideal for bit packing I guess with all those conjugations. no wonder people use Hungarian notation in programming hehe
eulerscheZahl: just make sure not to become C# #1
Illedan: Gimme a few days euler ^^
Illedan: Me you and Zeno for that fight atm
YannT: I think I've won first Kotlin :D
YannT: mostly because no one does Kotlin
Uljahn: i think the contest isn't over yet :smirk:
YannT: siman did some tuning
iFightLegends: How can I check the time it takes me to make an output in JavaScript since console.timeEnd() prints directly in the standard output and performance.now() is not working? Date.now(); seem not to be precise - it says it took me over 2 seconds, but that can't be because only 1 second is valid on the first turn and it still worked.
Uljahn: start measuring the time after the first input
Uljahn: To debug: console.error('Debug messages...');
iFightLegends: Doesn't make much sense with Date.now() again - it says 0.08seconds... but after 50ms it should already timeout and I then I should't even had the time to print that.
iFightLegends: although I just noticed: console.timeEnd() did print the same...so I guess Date.now() is precise after all - thx :)
Palmipedus: is anyone using bitboard and mask?
Palmipedus: I have some perf issues (too much list of small object)
Palmipedus: I've never implement bitboard and mask, so I don;t really know where to start
JBM: what's your small object?
Palmipedus: coordinate (x, y)
Palmipedus: and I have list of coordinate for paths
JBM: if that's useful to you as is, just make an array of them
Palmipedus: for the "simulation", I'm using BFS with a node boject that has info about the state
Palmipedus: for the parth I could allocate a array of 15*15 but I wonder is it will be faster
JBM: well i'm not going to solve it all for you
JBM: but the expected point of bitboarding is: smaller data
Uljahn: https://tech.io/playgrounds/53455/fast-15x15-bit-grid-bfs-breadth-first-search
JBM: or perhaps more accurately: more compact data
Palmipedus: Uljahn good, it's in c++ but that would be useful for me
darkhorse64: add inherent parallelism
Palmipedus: but it seems to only represent the map, what about the info for the visited, you'll need to pass it down
Palmipedus: for each node
Uljahn: you could modify the map i guess
iFightLegends: thx4 the info about bitboards - I've never heard that term in my life, learned something new today :D
emh: hmm.. for path reconstruction I guess there are at least two options. either do xor (symmetric difference of each generation) and reconstruct a path that way (but might have multiple choices). or use another bitboard with 2 bits per cell to indicate parent
emh: I just ordered 1.5 kg of tea. mostly chili, licorice and other spicy ones. some new taste trials. should be enough for 4 months hehe. drank around 200g in last 2 weeks
dbdr: emh again? :D going out fast
emh: hehe yes. still have 300g but got addicted to this chili licorice which I am out of now
emh: I also ordered a new one with 17% chili. should be spicy enough heh. and has like 10 other ingredients
emh: called chiliform
emh: chili, licorice, cocoa peels, mint, ginger, peppermint, nettle, black pepper, fennel, cinnamon, cardamom, cloves and chili with seeds
amurushkin: emh interesting tea. never see something similar at our shop. could you show a picture of the box?
emh: amurushkin https://www.med24.no/chiliform-te-100-g
amurushkin: could try to add chilie papper to my tea ))
emh: hehe but don't add too much. I added a half fresh cut Carolina Reaper to my beer once. threw up after. twice
emh: but the Reaper is special. world spiciest fresh one
amurushkin: i dont have possibility to buy Carolina Reaper here ))
emh: oh ok it was in the regular supermarket in Oslo once so I bought it. was cheap too
emh: maybe you can order online
amurushkin: I think i dont need it. The other pepper that i can bought and get on my garden is enough for me
tobk: are you sure that's tea? maybe someone just put a pack of curry back to the wrong shelf...
Quidome: why are you usinf BFS?
AntiSquid: why would you put a carolina reaper in a drink?
Quidome: I mean, for what aspect?
AntiSquid: Quidome BFS to find a path
AntiSquid: for whatever reason
Quidome: yeah sure, but I don't do lookahead at the moment
Quidome: So I was wandering :)
AntiSquid: stop wandering around, sit down and code :)
Quidome: Don't sea an obvious purpose
AntiSquid: purpoise :p
Quidome: you are doing BFS as well?
AntiSquid: even Automaton2000's grandmother does
Automaton2000: i want to use a spell not found on the chat.
yfprojects: Which one Automaton2000?
Automaton2000: unless you have a list
sadek11: i need exc in datastructure help
Tunga: Fixed some bugs, here we go, submitting!
emh: tobk hehe
emh: AntiSquid well we were drinking and eating reapers so the combination was obvious and alluring
Tunga: We all need help budy, I also need help data structure too sadek11
Uzay-G: when we submit our code for a league, the leaderboard is the leaderboard for that league? So if ur first in wood II that means ur submission did the best of all the wood |I submissions? I'm talking about Ocean of code
Uljahn: Uzay-G: if you're first in your league at 100% of the submit you'll get promoted to a higher league
Uljahn: *first or above the boss
MSmits: yay, looks like I'm getting into gold :)
MSmits: finally started using mines today
MSmits: note: do not try to lay mines on islands.
MSmits: but even when trying to lay mines on islands, my bot was better than my silence/torpedo bot
ZarthaxX: lol
MSmits: really taking it slow this time around
MSmits: I did my first google meet classes yesterday with headset and stuff
MSmits: no camera, just shared powerpoint. It's kinda weird, you don't see anyone, so every one in a while I gotta ask: Ehh can anyone with a mike say something
MSmits: Then they go "something". And I know they're still there
ZarthaxX: mhm
ZarthaxX: yeah there is a void
ZarthaxX: i dont have to do virtual classes so dont know the feeling
ZarthaxX: but can imagine :P
MSmits: I wasn't planning to do it, was just gonna do google chat + youtube + assignments and feedback
MSmits: but the boss said we had to :)
MSmits: I can kinda see why, especially for the younger classes
MSmits: sometimes they just need a live-teacher I guess and chat isnt enough
ZarthaxX: yes
ZarthaxX: the constant questions becomes a problem with the virtual class}
MSmits: I get some questions, but the questions are public, mostly. The students are instructed to first check if their question has already been asked and answered
ZarthaxX: how do they do that?
MSmits: google chat has channels, for each class, everyone is added to a channel
MSmits: to ask a question, they open a new discussion
MSmits: the question and my answer, remains up
MSmits: I also start each virtual class there. Everyone says hi, I note down their presence and then give them a google meet link
ZarthaxX: oh ok
ZarthaxX: and what do you think about this methodology
ZarthaxX: better than normal classes?
Keylan: Is there some flexibility in adjusting the interface that I might be missing? I see the horizontal slider for adjusting the IDE - but would like to control some of the other areas too (like hiding instructions but still show the playback/video)
ZarthaxX: like a possible future of education
MSmits: ZarthaxX I think it has definite advantages, but also some limitations. I would like it if there was 1 live class and 2 virtual classes each week. But it might not be equally effective for every age-range
ZarthaxX: i see
ZarthaxX: tru
ZarthaxX: being in the house makes kids get distracted
MSmits: live classes simply have far quicker interaction
ZarthaxX: but could change
ZarthaxX: also that yes
MSmits: I dont really have that problem, but some of my colleagues do
struct: Keylan its quite limited, most of the users use external IDE with extension to sync
ZarthaxX: maybe if you do a workaround about the lack of interaction
ZarthaxX: it could be better
Keylan: Thanks struct - I am using an external IDE but would like to see more of the log output alongside the video
struct: Try CG enhancer
struct: https://www.codingame.com/forum/t/cg-enhancer/59441
MSmits: not sure how, you got 20-30 students hooked up to a google meet. No matter how advanced the program, it's always going to be less effective than a live classroom when it comes to interaction. You do lose less time to bad behavior with google meet though.
MSmits: You could just mute them :P
Keylan: Thanks struct
MSmits: also it is easy for students to sneak away and pretend to be listening
MSmits: play games on phone instead
ZarthaxX: i meeant use another platform MSmits not google thingy
MSmits: thats why i said it depends on the age range. My students are 17 years old on average. Far more mature
ZarthaxX: yeah
ZarthaxX: lol
MSmits: sure, there might be improvements, but i find it hard to imagine a different platform having all advantages of a live classroom
MSmits: it can get closer to that, sure
ZarthaxX: yeah, hard to accomplish
ZarthaxX: also helps to keep kids social in some way
MSmits: yes
ZarthaxX: and not be in their home all the time
MSmits: cooperation is also a skill
eulerscheZahl: https://prnt.sc/rsc04z is it me or is it broken?
eulerscheZahl: Cannot read property 'teamLeaderboard' of undefined
MSmits: it's you
MSmits: I can see it
eulerscheZahl: (╯°□°)╯︵ ┻━┻
MSmits: you're 6th
MSmits: gj by the way
eulerscheZahl: yeah, the top of the IDE tells that
eulerscheZahl: but wanted to see the rest
eulerscheZahl: and thanks :)
MSmits: probably restart the browser
MSmits: you did too many hacky things
eulerscheZahl: left and reentered IDE, not helping
eulerscheZahl: restart it is
eulerscheZahl: nope
MSmits: weird, maybe if i restart its gone too
MSmits: sec
MSmits: yep it's gone
MSmits: i cant see the leaderboard anymore
eulerscheZahl: discord ping time
eulerscheZahl: but first: firefox test
eulerscheZahl: broken in firefox too
MadKnight: Automaton2000 did u break something again ?
Illedan: Fine for me
Automaton2000: but if i can find the motivation
eulerscheZahl: did you reload the IDE Illedan?
eulerscheZahl: *checks leaderboard outside of the IDE* what are you doing up there Illedan?
Illedan: Doesn't work now
Illedan: -.-
Illedan: Dammit
Illedan: why did I reload
Illedan: :sob:
eulerscheZahl: to verify my bug report
eulerscheZahl: i pinged @staff on discord
struct: seems like silver only
eulerscheZahl: i just opened the IDE leaderboard to search for struct and see if you are in silver :D
eulerscheZahl: i have a short attention span
Illedan: lol
MadKnight: fix your attention
struct: bi
struct: no
struct: its all leagues
struct: I ctrl + F5 and now it bugs for me too
MadKnight: leaderboard
MadKnight: thibaud is on it
struct: Its on all games
yfprojects: i do see it, also after reloading
yfprojects: Illedan is #45 right now, because of submitting
Keylan: struct I have cgenhancer going and see most of the features, but full screen console doesn't seem to be happening - is there a trick?
struct: I dont think it can go to fullscreen
struct: but it becomes bigger right?
struct: Or is the page like it was before?
Keylan: layout is the same, leaderboard and some other small things are different
struct: enable the sync
Keylan: Yup, sync is enabled
struct: The text editor should hide
Keylan: I'll search around for bugs with the text editor not hiding
struct: should look like this
struct: https://i.imgur.com/OPghPnz.png
Keylan: Thats what I was hoping for yea, but text editor still there. Layout is the same
struct: What sync are you using?
struct: CG sync or CG local?
Keylan: Ah, whatever the native thing is
Keylan: Didn't realize there were two options
Keylan: The little settings window says CodinGame Sync at the top
struct: hmmm, I don't know then, all I remember doing was installing and enable CG Enhancer script
struct: and then enable the sync
Keylan: you are also using CG sync?
struct: yes
Keylan: I will try turning it off and back on again =)
Keylan: Ok - when I enable sync the layout changes briefly and then switches back, debugging
YannT: did I takle a screenshot of me #1 because kovi is repushing? why yes, yes I did
Counterbalance: I'm just testing against you so you have a witness ;)
eulerscheZahl: to the gallery of popped dreams with it
dbdr: eulerscheZahl your top 3 dream?
Illedan: That is my dream
YannT: ah kovi and wlesavo are repushing, that is why the stars aligned ahah
YannT: enjoying my 15mn of spotlight while they come back :p
dbdr: make it count ;)
Keylan: struct fwiw it was because I had 2 way data binding enabled
AntiSquid: so how well did you tackle the screenshot?
wlesavo: YannT i think you got top1 before i resubed
Keylan: thanks for all your help
eulerscheZahl: no dbdr, more like https://imgur.com/a/BMNjUOd
Illedan: Agade mid submit :D
eulerscheZahl: then https://imgur.com/a/71L03t1
AntiSquid: kodle mid submit
dbdr: always someone in progress
YannT: now might not be the best time to rewrite my eval like I've been meaning to, it will definitely break everything :p
eulerscheZahl: then https://imgur.com/a/gNYPRkE ?
AntiSquid: Automaton2000 mid submit
Automaton2000: that's the point of view
Illedan: So many submits :D
eulerscheZahl: https://imgur.com/a/2bqB75Y
eulerscheZahl: i can keep going with my gallery of popped dreams :D
Illedan: I remember mm, waking up at the night before it ended and seeing myself first
kovi: still no leaderboard?
Illedan: bo
eulerscheZahl: check the global one
kovi: they already setting it up for gold?
eulerscheZahl: https://www.codingame.com/contests/ocean-of-code/leaderboard/global
AntiSquid: what do you mean no leaderboard?
eulerscheZahl: no IDE leaderboard
eulerscheZahl: broken
AntiSquid: i click in the IDE and i get the leaderboard opening for me
dbdr: me too
AntiSquid: ok then note to self: don't refresh
eulerscheZahl: quiz: who shared this pic? https://imgur.com/a/wAcl3qo
AntiSquid: reCurs
eulerscheZahl: :100:
Illedan: Daym, that thing was actually nice
AntiSquid: much better than the t-shirt prize indeed
YannT: there, end of my 15mn :(
eulerscheZahl: i don't even remember this one: https://imgur.com/a/L1V9ub3
AntiSquid: someone shared a captcha in chat
AntiSquid: when we were talking about little bobby drop tables
AntiSquid: was it?
eulerscheZahl: no, i think i got that captcha myself
AntiSquid: some captchas have weird words in them
DavidJangdal: Me and a friend has created a bot each, but we can't find each others in list and play against us. How do I play against his bot?
eulerscheZahl: are you in the same league?
eulerscheZahl: you can only play vs your own league and below
AntiSquid: and you need to submit !
eulerscheZahl: then try to filter for you friend (assuming you follow each other): https://prnt.sc/rsddf7
eulerscheZahl: good point AntiSquid
AntiSquid: or your friend needs to submit
DavidJangdal: How do I know what league we are in?
eulerscheZahl: tells you above the viewer in the IDE
YannT: it says at the top of the IDE
AntiSquid: you didn't submit yet DavidJangdal
AntiSquid: so your friend can't find you
DavidJangdal: Yes I have submitted :)
AntiSquid: DavidVarinsky is your friend?
eulerscheZahl: https://prnt.sc/rsdevc there you can see your league. i'm stuck in silver
wlesavo: how long it is before gold? couple of hours approximately?
eulerscheZahl: 1h
wlesavo: oh, ok, thx
eulerscheZahl: SaiksyTime as we use to say
AntiSquid: DavidJangdal press the yellow submit button bottom left
eulerscheZahl: meaning that it can be a bit earlier or later
DavidJangdal: I have done that, I'm rank 3366 th
AntiSquid: your friend also didn't submit
AntiSquid: i don't see either of you on the leaderboard
DavidJangdal: His is still running, does it need to finish?
AntiSquid: ah wait, wrong game!
eulerscheZahl: you didn't submit
eulerscheZahl: https://www.codingame.com/contests/ocean-of-code/leaderboard/global?column=keyword&value=david
Uljahn: are you in the same multi? :smiley:
DavidJangdal: But, I have clicked the submit :)
AntiSquid: you didn't say you're playing the wrong game
AntiSquid: you need to play ocean of code
AntiSquid: and get an avatar for +5% win bonus
eulerscheZahl: which game is it? coders strike back?
eulerscheZahl: wood leagues are huge and you can only select top1000
DavidJangdal: Back to the code
eulerscheZahl: same problem
eulerscheZahl: you can only fight top1000
wlesavo: AntiSquid gimme an avatar
AntiSquid: you have one
AntiSquid: that's why you're so high on the ladder, see? it works wlesavo
Uljahn: wlesavo: your avatar is quite good with +20% python skill bonus :)
wlesavo: AntiSquid hm, but i would realy appreciate an additional 5%, would it help if i will set two avatars?
eulerscheZahl: wlesavo how about https://drawception.com/panel/drawing/yKGHaJZF2j/captain-garfield/
Uljahn: you can set the background
wlesavo: euler blocked by our goverment, lol
Uljahn: worked for me
eulerscheZahl: or https://drawception.com/panel/drawing/PjFY6336/pirate-cat/
AntiSquid: try this then wlesavo https://i.imgur.com/tmgMtFO.jpg also a cat avatar
eulerscheZahl: hm, blocked to i guess
wlesavo: AntiSquid will i have to resubmit then?
AntiSquid: idk, pray to the galactic spirit and hope you randomly end up in the universe with the best random seed for you ?
AntiSquid: or switch to C++ for speed boost
wlesavo: will it also give me my 5%?
blasterpoard: more
YannT: speed is not of the essence currently really
YannT: I typically answer in 0-5ms
YannT: unless there's like silence spam bot, but then I just reset stuff so
blasterpoard: = 0-500ms in python
YannT: :grimacing:
YannT: I know how I'm gonna make use of the time eventually, but for now I don't think anyone really does
blasterpoard: I have a search that can use it, but it is capped at 10ms for now
YannT: I found that if you prune the order combinations sensibly, there's really no need for the time
YannT: some combinations just don't make sense or are functionally the same as others
eulerscheZahl: including the time when you placed a mine?
eulerscheZahl: + location
eulerscheZahl: the location is the important info actually
blasterpoard: I'm not talking about the opponent's possible paths in previous turns
blasterpoard: I'm talking about selecting your own path for the next turns
dbdr: ver reminiscent of locam, the action earch
dbdr: *very
YannT: quite
YannT: weirdly enough I did well on that one too
blasterpoard: well, I guess I'm doing something completely different from the rest of the bots
YannT: so that's either very good or terrible :p
blasterpoard: looks good, considering that after ~30 turns the movements of my bot are random
dbdr: what are you searching if it's random?
YannT: I don't know if planning a path ahead makes a whole lot of sense given the uncertainty about a lot of stuff
YannT: by the time you get there could be mines or a torpedo in the face
blasterpoard: dbdr incomplete bot
dbdr: ah right
YannT: in the end I've become quite convinced that moving so as to minimize ennemy detection and mines is a whole lot more important than maximizing space use
YannT: (don"t wanna run into corners if you don't have to, but a lot of the time the smart move would actually be to surface even if you technically don't have to, which is quite counterintuitive for an eval :p )
blasterpoard: sure, my search is looking for paths that don't allow the opponent to find out where I am without sonaring/damaging me
YannT: but mine laying by the opponent might screw up your path any turn?
blasterpoard: I have a solution for that
blasterpoard: current bot ignores all mines though
darkhorse64: why surfacing is better ? It gives vital info on your location, it costs a life and it does not prevent you for being impacted by mines
YannT: actually it can prevent you from going into a mine field
blasterpoard: also, the opponent probably already has that info
YannT: sometimes you're better of surfacing and backtracking safe waters than going into the 20 mines your opponent put on his side
YannT: also vis a vis detection, surface + silence can create a lot of incertitude than just silence on its own :)
YannT: silence is max 3 directions by default, with surface 4, and depending on your previous pathing, maybe less
YannT: so surface + silence makes you disappear really well and can allow you to avoid going into mines (which if there's a lot of less would be a lot more than just 1 dmg)
darkhorse64: Make a lot of sense
darkhorse64: *makes*
YannT: yeah well, try explaining that to an eval function tho :/
YannT: it's tricky
Zenoscave: YannT do you sim?
YannT: yeah
YannT: 1-ply for now
Zenoscave: huh
YannT: plan for the future is 1) rewrite a proper eval because mine is a mess and 2) do opponent turn :)
blasterpoard: https://www.codingame.com/replay/445016025 I was trying to figure out why I didn't silence after my 1st torpedo, and why yannt didn't fira a second one...
blasterpoard: turns out my bot is smart xD
YannT: I don't know why I didn't shoot you actually
blasterpoard: figure it out
blasterpoard: it will help you fix your bot
YannT: no clue, I should've shot you on fram 144
YannT: frame*
YannT: I probably decided it would give my position away or something
blasterpoard: nope
blasterpoard: you didn't know my position
YannT: idgi
YannT: I did
blasterpoard: (13 10) was my other possible position
blasterpoard: you didn't know whether my, or your torpedo damaged me?
YannT: 0ms) [OPPONENT] MOVE E => 1/1 [(11, 11)]
YannT: not to me
YannT: I *really* should've shot you
blasterpoard: or at least, that's why my bot didn't silence
eulerscheZahl: in most cases it's a valid assumption that players don't shoot themselves but get shot by the opponent
YannT: my eval's a mess, it decided the loss in possible positions for me wasn't worth the torpedo (which is obviously wrong)
icecream17: I should code for the case I have three lives and the opponent has 2 lives, and we're both on the same square
YannT: that's why I wanna rewrite it, sometimes it falls on the wrong side of things
blasterpoard: and, unlike my bot, you actually saw the hp (not) change between the torpedos
YannT: yeah my tracking is top notch, I know for sure where you are, so I properly evaluate that torpedo as a guaranteed 2 damages
YannT: just decided it wasn't worth it because it would give my position away :p
karliso: One could damage himself to confuse opponent? Nice.
blasterpoard: so my bot should have silenced from (11 11)
blasterpoard: I should fix that eventually
YannT: yeah dunno why you have two positions on that frame
YannT: I guess that requires the assumption that you wouldn't shot yourselmf
blasterpoard: yes
YannT: (not actually possible in the case of torpedoes that don't overlap anyway so not a factor here)
blasterpoard: you couldn't know whether I went S1 or E? from (8 8)
blasterpoard: [8 8]
YannT: 2 torpedoes, 2 damage each, no overlap, means either we both shot ourself right in the face, either both torpedoes landed
YannT: either way there not really uncertainty there ;)
blasterpoard: my bot just makes absolutely no assumptions xD
Zenoscave: so landing torpedos for 1 hp is not good anymore?
blasterpoard: Zenoscave depends
YannT: well you should probably assume you wouldn't self torpedo for 2 damage :p
Zenoscave: self torpedo?
YannT: no it's good
YannT: you don't really use torpedo for sonar anymore tho yeah
YannT: too costly for little upside
blasterpoard: btw EESWSWNWSSSENEENEN was the result of my search from [8 8] in that game
blasterpoard: that's the 10ms search that I do xD
YannT: I should've won this if eval didn't decide a 2 damage torpedo was too good for it :p
blasterpoard: well... I finished with 3hp
YannT: yeah well, -2 if a shot and then the mine, you dead
blasterpoard: yes
karliso: Are you guys doing multi-turn simulations?
blasterpoard: also the [14 10] torpedo should give away my position, now that I think about it
blasterpoard: becuase otherwise I'd shoot your face
blasterpoard: karliso I have something, but it's still under development
codefreak288: hey bitches how u all
YannT: I really need to rewrite this eval... 2dmg guaranteed torpedo, doesnt do it, this is preposterous
YannT: I'm going to have a talk with its manager
ZarthaxX: ban
dbdr: YannT, dying undetected, that's the holy grail ;)
YannT: apparently ;)
YannT: but if I yank up to reward for torpedo too much, I end up with a coked out bot that does stuff like SILENCE 4 into a corner just for the chance to put one in sooo
YannT: it's a balance
kovi: selfdamage is gold idead, or is it legend?
icecream17: i think some people will just account for that
blasterpoard: kovi wood
Zenoscave: def wood
kovi: i did no damage in woods
icecream17: what? then how did you win
kovi: silent only (crash or enemy run out of space)
YannT: aka the Saelyos strategy
YannT: good bot for stress testing :D
MSmits: oh... I think I am still triggering mines I am in range of :P
MSmits: I don't hit myself with torpedos, but forgot I can do this with mines too :P
YannT: good for screwing upo ennemy detection
YannT: it's the shot self in the arm to throw the police off track method
Zenoscave: Doesn't work if youre still holding the gun ;)
MSmits: YannT only if the enemy detection is bad
MSmits: it won't screw my detection
MSmits: shoot yourself all you want :)
dbdr: at some point there can be a tradeoff between perfection (conservative) and heuristic (prunes more and correct in x% of the cases for x high)
eulerscheZahl: gold!
ZarthaxX: lol gold
MSmits: nice
kovi: 38.09
MSmits: the mittens come off now!
kovi: finished with same score
kovi: siman egyenlo lett
karliso: What techniques are used to simulate incomplete information games?
MSmits: random with probability
MSmits: but not on this contest
MSmits: here the posssibilities are the perfect information
wlesavo: in the mid of my submit lol
pb4: oh shit
icecream17: Gold????
MSmits: so it's not your typical game with incomplete information
icecream17: Oh noooooo
pb4: I'll be late to gold, won't have all the games :(
Zenoscave: I JUST RESUBMITTED
wlesavo: pb4 same (
dbdr: noobs ;)
pb4: hey at least I can say I'm first :D
eulerscheZahl: the new league always opens around the same time
Zenoscave: I thought we had another 50 minutes
MSmits: dudes and dudettes... this is not your first contest :P you know it starts at 6
dbdr: does it matter pb4?
Zenoscave: oops off by an hour
eulerscheZahl: i can understand that wlesavo submitted but the rest should know better
karliso: MSmits Do you mean one should treat this game as perfect information game when simulating?
dbdr: eulerscheZahl #1 ;)
wlesavo: first for me, yeah
ZarthaxX: screenshot toad
icecream17: Cpt. Haddock?
MSmits: yes you should, but the perfect information tells you all the positions the opponent sub can still be at. It's a different kind of perfect information
icecream17: Is that from the username or just random
eulerscheZahl: not first on my laggy leaderboard
eulerscheZahl: but new league opening isn't a screenshot reason anyways
dbdr: it is on my IDE
dbdr: global is not refreshing
MSmits: I wouldnt consider it incomplete information, because games like that are typically different.
dbdr: ah it just did
MSmits: in most incomplete information games, you know everything except 1 or 2 things. In this game the entire point is eliminating possibilities
wlesavo: oh, at least we can deduce silver bot by its MSG
Swagboy: MSmits, check kriegspiel
eulerscheZahl: what langauge is the bot?
Swagboy: A prussian chess game with really incomplete information considered as such in research papers
wlesavo: c#
Zenoscave: c#
eulerscheZahl: shouldn't it be Kriegsspiel with a Fugen-s?
dbdr: does not sounds like a strong definition MSmits
MSmits: it's not, but I am trying to get across that this is not your typical incomplete information game
dbdr: it's not incomplete because incomplete is only incompletely incomplete? ;)
MSmits: right :P
eulerscheZahl: https://www.codingame.com/share-replay/445032818
dbdr: what's typical for you?
eulerscheZahl: from the message that might be it
MSmits: like UTG, halite
Swagboy: Kann sein eulerscheZahl !
YannT: looks like they took top100 or thereabouts then?
MSmits: starcraft
MSmits: also wondev woman
izik1: free gold wut
eulerscheZahl: legend won't be for free
eulerscheZahl: but hard work
MSmits: depends entirely on how they choose the gold boss
pb4: Where's the boss gone ?
izik1: Yeah, didn't expect the free gold though
wlesavo: дщд
wlesavo: lol Cpt. Haddock 0.0
AntiSquid: lol my garbage bot promoted?
MSmits: if they choose it at rank 15 and everything below that is about equally you strong, you get a 100 bot legend within a day
eulerscheZahl: resubmit?
AntiSquid: so i don't need to submit new version until next week :D
kovi: wlesavo still silver?
dbdr: 96 people in gold
ZarthaxX: dont call it trash squido
Zenoscave: Why woiuld they resubmit boss?
AntiSquid: idk i have gold timer frozen at the top
wlesavo: kovi yeah, its gonna be a long submit
Counterbalance: i'm at 200 silver and got promo notice too
ZarthaxX: wtf
izik1: 314 people in gold :thinking:
AntiSquid: is it real or bug?
Zenoscave: boss has 0.00 score
YannT: if they resubmited the boss everybody passes ahah
izik1: Boss seems to have gotten a bad bot
Beerus: my algo is not even complete and i m gold
YannT: oh yeah
kovi: than there may not be real assessment for now
eulerscheZahl: this does not sound right
YannT: 267 in gold ahah
icecream17: What? promotion to gold in 00H 00MN 00 SEC
ZarthaxX: F
izik1: F
Zenoscave: F
izik1: I expect a revert
eulerscheZahl: F
tarriel: I was at the bottom of silver after a bad submission... and am now in gold :)
izik1: :v
AntiSquid: ban
MSmits: are we all testing our keyboards now?
eulerscheZahl: did i pay respect?
icecream17: thank you! i love THIS bug
YannT: all of silver is gonna go gold now ahah
ZarthaxX: lol
izik1: oops
Zenoscave: Except those who resubmitted...
eulerscheZahl: MSmits https://www.gamerevolution.com/news/612924-five-years-ago-call-of-duty-press-f-to-pay-respects-meme-born
MSmits: They might put everyone back in silver and do it again...
AntiSquid: no worries probabl getting demoted :D
Zenoscave: I.e. me, pb4 and wlesavo
MSmits: ahh ok eulerscheZahl
Zenoscave: among others
AntiSquid: i got confirmation message of promotion :thinking:
pb4: haha
AntiSquid: anyone out there who didn't get promoted to gold?
dbdr: 267 in gold :O
pb4: o/
Zenoscave: o/
Astrobytes: wtaf is happening
wlesavo: :grimacing:
Zenoscave: Madness
eulerscheZahl: 463 in gold
Uljahn: jeez
MSmits: thats basically what silver was
pb4: silver will be the new legend
pb4: 15 people left :D
izik1: lol
Zenoscave: pb4 how many matches did you finish
pb4: I'm at 56
Zenoscave: I'm at 29
pb4: but only 5 since league opening
Astrobytes: Was Silver boss broken or something?
izik1: 186 gold though, so I'm in the top half
wlesavo: lol and now boss is back
wlesavo: :grin:
izik1: Astrobytes: yeah
Zenoscave: oops
AntiSquid: 31 left in silver?
Astrobytes: lol
dbdr: too bad if you missed it
eulerscheZahl: i don't know what happened but i blame Saiksy
kovi: what will happen now
dbdr: it's repetition of the wood 2 situation
AntiSquid: do we get double the xp ?
pb4: SaiksyApo now : https://wompampsupport.azureedge.net/fetchimage?siteId=7575&v=2&jpgQuality=100&width=700&url=https%3A%2F%2Fi.kym-cdn.com%2Fentries%2Ficons%2Ffacebook%2F000%2F029%2F405%2Fjordan.jpg
AntiSquid: i mean i expect to get demoted and repromote later
Zenoscave: oops
Zenoscave: ya dun goofed
eulerscheZahl: you might get depromoted to silver again
dbdr: AntiSquid I rememer some situation like that and you only got it once
izik1: If we _don't_ get to keep the XP, I'll get a level down
pb4: [CG]SaiksyApo
eulerscheZahl: he's on it
YannT: can they even do it if they want to :p
pb4: Just want him to see the image :P
ZarthaxX: all silver is gold?
izik1: yep
izik1: bug
izik1: bad boss submit
dbdr: DROP TABLE 'gold'; ezpz
AntiSquid: demote ZarthaxX now [CG]SaiksyApo
dbdr: CLEAR maybe
ZarthaxX: i demand to be demoted
izik1: lol
Illedan: haha
Illedan: I would rather like to be in Silver now
eulerscheZahl: dbdr i have a captcha that you will love https://imgur.com/a/L1V9ub3
Zenoscave: nice euler
MSmits: Illedan you want more social distancing?
Zenoscave: XKCD
ZarthaxX: if u get demoted, u can get more xp
Illedan: :D
dbdr: yeah sw it earlier :)
dbdr: saw
ZarthaxX: i want to be demoted
wlesavo: 30 ppl silver, nice company
ZarthaxX: :(
YannT: '; DROP TABLE bobby; --
icecream17: Lol, some people have negative points
Quidome: WTF is happening???
eulerscheZahl: once i promoted to bronze twice, only got CP once
AntiSquid: promotion apocalypse Quidome
YannT: I'm not on the podium anymore that's what!!
YannT: preposterous
wlesavo: boss deleted
icecream17: 194th. That's the best rank i've ever got. (i'm so tryhard)
eulerscheZahl: i'm in silver
izik1: oh, hey
AntiSquid: lol
icecream17: wow
YannT: hey me too!
Astrobytes: lol
izik1: they totally reverted the boss
eulerscheZahl: with a sumbit still running
Illedan: Maybe I get double XP?!
Illedan: :D
eulerscheZahl: so no gold within the next 2h i guess
dbdr: empty leaderboard in gold
icecream17: oh i'm in silver now
ZarthaxX: silver yay
Swagboy: Aha back as well
pb4: So in the end... domak might be first in gold :D
icecream17: What? It's like I never submitted because I can't add anything other than default
icecream17: oh nevermind
Zenoscave: gz domak
Zenoscave: ;)
AntiSquid: back to silver \o/
wlesavo: well at least that was funny
AntiSquid: i want my old submit date back :/
eulerscheZahl: perfect time to add a sneaky update to your bot without anymore noticing
YannT: like a 4-ply minmax
YannT: all sneaky like
AntiSquid: i thought the most heroic deed would be to hid until 5 minutes before the contest ends?
icecream17: I win about 4 of the first 10 battles, so hopefully I will get to 5
BenjaminUrquhart: hold up, how did I get to gold
BenjaminUrquhart: what what
Zenoscave: late to the party BenjaminUrquhart
YannT: you did, and then you didn't
YannT: it's shrodinger's gold league
YannT: you're in it until you look, and then you're not
BenjaminUrquhart: I have the email to prove it
Astrobytes: :D
YannT: but at the end of the journey, you'll find that the gold league was within you all along
BenjaminUrquhart: ah yes
kovi: :)
BenjaminUrquhart: so um, why am I being resubmitted
icecream17: People who silence all the time always beat me. Hey, I realize something. If they silence, I should silence more often
AntiSquid: sure you can stay wood2 as long you remember the true legend league in your heart ... Automaton2000
Automaton2000: i know it's possible to get a lot of things
Zenoscave: just not legend in wood
AntiSquid: you. are. the. legend. Automaton2000
Automaton2000: i start the timer after reading the first input
AntiSquid: :clap:
Zenoscave: Automaton2000 is learning!
Automaton2000: why is it that you are using a ga for csb
Zenoscave: holy shit
icecream17: I went alll the way down to 300
icecream17: So it's accurate now
AntiSquid: why did everyone submit, should have waited for gold to open first tsk tsk
BenjaminUrquhart: it auto-submitted when I opened the ide
SavinVadim: Going live in 10 minutes: https://youtu.be/b_lm-GKnqFA
YannT: you donna stream while the leaderboard is in disarray? :o
reCurse: Good luck submitting anything for the next few hours
AntiSquid: vadi
jacek: hmm? no uttt submits?
AntiSquid: SavinVadim it says live in 24 hours
SavinVadim: it's live now
Quidome: Silver looks normal again...
AntiSquid: with that outfit you should be on twitch ... SavinVadim
AntiSquid: leaderboard isn't crushing, everyone has their bot rank recalculated
Quidome: Oh no, I see it now
AntiSquid: man your assumptions drive me crazy ... why would everyone resubmit at once
BenjaminUrquhart: they got hte email
BenjaminUrquhart: they opened ide
BenjaminUrquhart: instant resubmit
icecream17: silence 2 instead of silence 0 does wonders
emh: what happened to Gold?
eulerscheZahl: it was too big
eulerscheZahl: like all of silver
Bob: emh: the boss had a failure and the entire silver lot was promoted
Bob: so they did a rollback
emh: oh ok
Bob: now we have about 5 times the expected number of bots recomputing
Bob: so we wat :D
Bob: wait*
eulerscheZahl: to get a full gold recomp after
Bob: I just hope I'll make it back up to somewhere above the new boss
eulerscheZahl: saiksy: set boss score to that of player X meanwhile player X: i'll resubmit tadaaa, huge gold
AntiSquid: saiksy at #133, so about 25% promoted
AntiSquid: will be promoted *
Bob: initial number of players in gold was 95 before the failure
pb4: eulerscheZahl :that's what happened ?
eulerscheZahl: yeah, paraphrasing here
wlesavo: euler, but the score was ok for quite a while, but at some point i saw that boss was actually resubmitting at around 30%, after it sited at 0.0 for a while
eulerscheZahl: the plan was to see how reliably the boss reaches such a rank i think
wlesavo: oh, i see
wlesavo: quite reliably
inoryy: :grimacing:
pb4: wlesavo : why are your matches that long ?
kovi: python?
tempux: :joy:
_AhmedHafez: how can i go to clash i entered ?
eulerscheZahl: play an old clash again?
kovi: siman resubmit?
siman: yes
kovi: but why?
_AhmedHafez: see standing of this clash
kovi: in gold we could have seen some actual standing
siman: I found new bug and fixed.
Beerus: guys my programm stops with no timeout or runtime error
kovi: oh, well im sure i have a lot more as well :)
Beerus: at least not a runtime error that codin debuger shows
Beerus: c++
_AhmedHafez: how can i find users of my school ?
eulerscheZahl: siman on chat :o hi
siman: hi, there. but I'm not good at english. :joy:
jacek: happy Caturday's eve
kovi: Those better than the Boss will be promoted to Gold League at 18 H 17
kovi: tomorrow or when?
eulerscheZahl: where do you read that?
kovi: on leaderboard
eulerscheZahl: F5 and check again
kovi: still there. what is displayed for you?
Quidome: Waiting for the bot to to his submit calc
Quidome: The Boss bot that is
kovi: 147th
Quidome: yep, and just recalculated, drum roll
eulerscheZahl: oh, it's back
eulerscheZahl: my IDE leaderboard was all white
tobk: what happened with gold promotion?
eulerscheZahl: scroll to the boss at #107
Bob: there was a bug
eulerscheZahl: boss needs 100% too
tobk: some were already in gold, now all in silver again; i got promotion message, but now am well below the boss :-(
Bob: all of silver got accidentally promoted to gol
Bob: they had to rollback, rerun silver and restart the boss
Quidome: Cpt. Haddock now at 107
Quidome: I am below the cut this way :(
wlesavo: is it time for resubmit?
Quidome: no, no, no
Quidome: mayhem
wlesavo: jk
Bob: the original cut at 18:17 was at #95, just saying
lNitsua: I'm trying a new path finding that does a BFS to find available paths, and ranks them based on how open they leave the map, and how much information they give away
eulerscheZahl: you can submit wlesavo
Bob: now it looks like they're adjusting the strength of the boss to get a similar cut
eulerscheZahl: boss will take some time
lNitsua: but, how should I score those things?
eulerscheZahl: i think bosses get more battles than regular players
lNitsua: and how would I score the whole path? If I take the sum of the whole path, the longest will just win, and if I take the highest score the shortest path will win because of fewer moves
lNitsua: would the average be best?
Quidome: Just don't submit and wait a while...
tobk: funny how it still says "gold promotion at 18 H 17"
Bob: that's probably the time of the original promotion
Bob: but yeah :)
tobk: of course, it does not say which day...
Quidome: :D
eulerscheZahl: SaiksyApo posting this on discord: https://cdn.discordapp.com/attachments/690566608891936769/695691013309857852/unknown.png
Bob: lNitsua I'd say just check how much space you have left at the end and size of your own visibility map
Bob: don't go for complicated stuff, just use one criterion for main decision and the second one as a tie-breaker
Bob: my current code does excatly that
eulerscheZahl: the lazy bob
Bob: #whatElse
lNitsua: does it matter that since I can't check all possible paths, some will be shorter?
Bob: nope
emh: ah Cpt Haddock is calculating I see
lNitsua: the shorter ones will technically have more room and give away less information, but with a BFS they'll only be off by like one or two
ZarthaxX: classic bobby
Bob: in most cases the game is not decided on who runs out of space first
Quidome: Yes didn't know what was happening at first and was happy to be in gold and now I don't make the cut...
Bob: just make sure you avoid trapping yourself in obvious short dead-ends
eulerscheZahl: the other guys just keep shooting at me :/
Bob: because *then* the resulting surface both docks you one HP and reveals you
eulerscheZahl: only the sector
Bob: yes but depending on the configuration it can be a lot
ZarthaxX: promotion
eulerscheZahl: boss at 80
Bob: wooo I'm just above
kovi: wow lucky boss
Zenoscave: https://www.codingame.com/replay/445075002 I am clearly missing something
eulerscheZahl: i think that score was set manually
wlesavo: 3/10
wlesavo: lol
Bob: considering I was 54th at the original promotion, I'd have been rather vexed not to make it this time around
Quidome: Cpt Haddock is now at 81 and you are at 77 Bob :)
Bob: \o/
dbdr: whom did you play wlesavo? :D
Bob: let's be bottom of gold now
eulerscheZahl: the toad and he won :/
eulerscheZahl: i'm one of his 3 wins
dbdr: but he lost 7??
dbdr: no, won 9
Quidome: OK gold is back in business
jacek: why theres no easter toad?
wlesavo: no i meant 3/10 in rank, one loss
dbdr: ah :)
eulerscheZahl: because i'm not religious jacek
eulerscheZahl: hm, that doesn't add up with xmas...
dbdr: xmas recycled pre-christian celebrations
eulerscheZahl: based on another religion?
Zenoscave: mostly pagan
dbdr: not even sure it was religions
dbdr: it's the darkest time of the year, makes sense to do something at that time
eulerscheZahl: ZarthaxX will disagree
Zenoscave: ZarthaxX do you disagree?
ZarthaxX: yes i disagree
ZarthaxX: what are we talking about btw?
Zenoscave: lmao
eulerscheZahl: xmas = darkest time of the year
ZarthaxX: not my case :P
dbdr: ocean of code = bluest time of the year
Zenoscave: I see mostly red and yellow dbdr :P
dbdr: initial map ;)
emh: wow I'm a bottom feeder now in Gold
Zenoscave: how many in gold now?
Zenoscave: ~100
eulerscheZahl: 81
Zenoscave: ?
Zenoscave: ok
eulerscheZahl: and emh won't make it to legend with the current bot
eulerscheZahl: neither will i :fearful:
emh: I guess it's true
dbdr: depends how the boss behaves ;)
emh: will have to gather my wits and C++
Zenoscave: ... Why do you say that euler? new strat?
YannT: pretty sure you will eulerscheZahl
YannT: legend bar is usually not thaaat high!
eulerscheZahl: still 1 week to go, others will improve
dbdr: with current boss he means
Zenoscave: oh
dbdr: *current bot
eulerscheZahl: i'm confident that i'm able to reach legend
YannT: yeah that's what I mean too
eulerscheZahl: just needs some more work
YannT: current top5-10 bots feel good enough to reach legend in a week
YannT: improvements become less dramatic as the contest drag on
eulerscheZahl: true
eulerscheZahl: i still want to work on my mine avoidance
eulerscheZahl: and stealth
Zenoscave: Mine avoidance important now?
eulerscheZahl: of course
Zenoscave: I'm still ignoring them
eulerscheZahl: i even surface and turn around sometimes
YannT: remember locam, bots basically stagnated by the end
LegendsOfCodeAndMagic: someone called?
LegendsOfCodeAndMagic: :D
Zenoscave: lol
eulerscheZahl: locam was a horrible game for such a long contest
LegendsOfCodeAndMagic: ;(
eulerscheZahl: not complaining about the game itself, just the combo of game + marathon
Zenoscave: BotG best game
YannT: by the last week everyone pretty much already had the best bot they could muster anyway
eulerscheZahl: which wasn't even aCat's idea as he told me in all caps
dbdr: it was good if you took it slowy
dbdr: slowly
dbdr: it was august after all
LegendsOfCodeAndMagic: yeah, that was CG 'testing' ;]
AntiSquid: banning LegendsOfCodeAndMagic @_@
YannT: it was a solvable game essentially... so once you've solved it there's not much to do :p
AntiSquid: wrong contest
LegendsOfCodeAndMagic: xD
Zenoscave: who is LoCaM Really
AntiSquid: cat guy
Zenoscave: uljahn?
eulerscheZahl: LegendsOfCodeAndMagic = aCat?
AntiSquid: acat
AntiSquid: where's my money?
Astrobytes: Was the account he used on stream during LoCaM iirc?
Zenoscave: still no money AntiSquid?
AntiSquid: no lol
Zenoscave: tsk tsk LegendsOfCodeAndMagic
eulerscheZahl: but he announced the next contest already
AntiSquid: Automaton2000 rough him up
Automaton2000: you have to submit a bot to play the game
LegendsOfCodeAndMagic: hell do I know
LegendsOfCodeAndMagic: :/
eulerscheZahl: with the same game and previous winner codes public
LegendsOfCodeAndMagic: sent some mails
LegendsOfCodeAndMagic: 'investigating'
AntiSquid: is it ok to submit #1 bot from previous contest into your new contest? i mean i don't get prizes anyway
eulerscheZahl: meanwhile i'm still waiting for my Arduino Emoro Pro robot kit from riddles.io :/
AntiSquid: i doubt you will ever get that eulerscheZahl considering the state of riddles.io
eulerscheZahl: agreed
Astrobytes: Indeed.
eulerscheZahl: and booking.com told me they sent it
Zenoscave: in need
AntiSquid: maybe it would be different if the guy from riddles.io was here in chat
AntiSquid: would it?
Zenoscave: Anti are you that guy?
stone43: How long has riddles.io been reinventing their site?
eulerscheZahl: not even riddles' fault they shared contact information with the sponsors
eulerscheZahl: stone is back :o
AntiSquid: sure Zenoscave, i am using his arduino for a pass the butter bot
stone43: yes, I was away for a while
Zenoscave: what is its purpose?
AntiSquid: to pass the butter
Zenoscave: oh god
eulerscheZahl: riddles certificated was created in july 2019, expired in october
eulerscheZahl: so it got inactive somewhere in between
IAmTheTurtle: hi everyone. I got a message that i have been promoted to gold... well, i haven't and I guess I shouldn't (currently low in rank in silver). Is it a bug?
Zenoscave: yes. IAmTheTurtle
eulerscheZahl: yes
eulerscheZahl: you are in silver until you beat the boss
ZarthaxX: IAmTheTurtle are u from halite?
IAmTheTurtle: thanks :)
AntiSquid: or intentional ! :o
AntiSquid: promote all so it generates an email and have them check the game again
eulerscheZahl: you get an email for promotion?
Zenoscave: Why wouldn't they just send an email
IAmTheTurtle: halite?
AntiSquid: i do euler
IAmTheTurtle: @euler: i did
eulerscheZahl: hm, maybe i deactivated the notification
ZarthaxX: nvm im
kingofnumbers: There's a bug in the boss of silver
AntiSquid: ZarthaxX that is a "all your something something "
Zenoscave: probably . you hate notifications
ZarthaxX: nvm IAmTheTurtle
kingofnumbers: outputs:
kingofnumbers: SILENCE N 0 | MOVE S SILENCE | | MSG 10 4 or 1
ZarthaxX: what squid?
kingofnumbers: then:
kingofnumbers: Game Summary: Not enough charges of SILENCE
AntiSquid: AllYourPolarBears ZarthaxX
kovi: lucky rolls
ZarthaxX: lol
eulerscheZahl: anyone playing codejam tomorrow?
Zenoscave: o/
AntiSquid: no
Counterbalance: something went wrong earlier with the promotions so they reset it and did it again
Counterbalance: ohh scroll bug
Zandy156: kingofnumbers it doesn't affect anything though does it?
wlesavo: euler thx, registered just now, never tried such things though, but at least will look into problems
eulerscheZahl: in the qualification round you have 24h
eulerscheZahl: and only need to solve about 2 out of 4 problems to reach round 1
eulerscheZahl: "We'll bring the top 25 contestants from Code Jam Online Round 3 to our onsite World Finals, where they'll compete for the championship title and a cash prize of $15,000."
eulerscheZahl: not sure how realistic that announcement is
icecream17: Wait, I can register? But it says "I am at least 16 years old" and...
stone43: How far do you get Euler?
stone43: *did
AntiSquid: haha very eager
eulerscheZahl: last year i qualified for round 3 (but had no time on that day)
AntiSquid: i would have called in sick at work, i mean screw it :p
stone43: 15k pay day would be worth one day of PTO
stone43: or fake being sick
eulerscheZahl: $10k for the winner
eulerscheZahl: 15k for all finalists together
eulerscheZahl: and we all know who will get that 10k
wlesavo: onsite means offline?
eulerscheZahl: in the google office
wlesavo: i see, not very realistic indeed
eulerscheZahl: the one without Corona
miles7: hahaha
eulerscheZahl: can't find it despite searching for it
AntiSquid: idk still free trip right euler? why no day off?
eulerscheZahl: yes, google pays travelling expenses
JBM: that contest is going down the drain
kovi: who: let me guess, start with t?
Zenoscave: is there someone who always wins?
chucknorris: yes
JBM: that's not his nick on GCJ
eulerscheZahl: 6 wins in a row wasn't allowed to participate in the finals before, as he wasn't 18 years old
Zenoscave: whoa
kovi: wow, chucknorris? :)
NinjaDoggy: wew i'm late for ocean of code :(
NinjaDoggy: no notification till yesterday? :(
Zenoscave: Ninja Gold is open
Zenoscave: better catch up!
NinjaDoggy: yea... gonna play catch up :P
eulerscheZahl: still 16 days to go
NinjaDoggy: yea still plenty of time
eulerscheZahl: there was a email notification the day the contest started
NinjaDoggy: i somehow missed it i guess :(
eulerscheZahl: that can happen easily some other players also found the contest by coincidence
kovi: hmm, solid lead
eulerscheZahl: and the next thing is already announced https://twitter.com/CodinGame/status/1246110607419547648
eulerscheZahl: i don't know any details
darkhorse64: a pacman bot ?
NinjaDoggy: :O
eulerscheZahl: yeah, pacman gets 40 years old
AntiSquid: damn this was a waste of time Q_Q
eulerscheZahl: https://www.youtube.com/watch?v=pIrvpn3k9A4
Astrobytes: lol, Remi is the best
eulerscheZahl: he stopped before he became boring
Astrobytes: Yep. If only someone would tell all the other 'funny' people on youtube
AntiSquid: i stopped halfway through the video
MSmits: You can't even do this in the US. Instead of a golf club you get shot by Ak47 :P
inoryy: Code Jam finals were planned for late summer so quite realistic they'll happen
AntiSquid: more likely to be tasered MSmits
MSmits: think tasers are more rare than assault rifles :P
AntiSquid: or pepper sprayed
MSmits: yeah thats more likely
eulerscheZahl: when you keep flattening the curve, we have to continue social distancing for about a year, given the available beds in hospital in germany
MSmits: the spread may slow down as more people develop immunity. That means you can have more contact between people while having the same hospitalization rate
MSmits: also hospital capacity may increase
AntiSquid: i heard in US you get massive hospital bills sent to your home address :D
MSmits: yeah, uninsured people will, of which there are quite a few
MSmits: 30k or so if you're in for a week
emh: ok I registered for codejam. never tried it before. not sure how much time I will invest
AntiSquid: so maybe a lot of people don't want to test for COVID because they can't afford it in US
eulerscheZahl: the qualification round is fairly easy if you only go for the points needed to advance and you know a bit of coding, you are done in 15-20min
AntiSquid: which is why some people have weird ideas like china spreading it intentionally to screw over the US
MSmits: yeah, great idea. let's screw over our own country and then the US!
AntiSquid: RAIC level of targeting
MSmits: as opposed to just hopping on a plane straight away :P
AntiSquid: ok my NN is ready!!!
AntiSquid: but it only outputs MOVE N TORPEDO :/
MSmits: you have an actual NN?
AntiSquid: yes, massive time waste, since i must have fucked up something really badly
struct: Do you have NN experience?
AntiSquid: most likely the backpropagation
AntiSquid: attempted imitation learning
Nagatwin: FC NN ?
AntiSquid: what sort of experience are you implying struct?
Nagatwin: Tried to do a NN approach on oware
Nagatwin: but failed kinda hard
struct: If you ever done this successfully
eulerscheZahl: did csipcsirip change his nick?
struct: I think he is chucknorris
eulerscheZahl: that's what i think too but why?
AntiSquid: yes but ocean of code is clearly difficult struct
eulerscheZahl: i finally learned how to spell it :(
Nagatwin: hahaaaa
AntiSquid: does the character exploit still work on the IDE? the weights occupy a lot of space
inoryy: character exploit?
AntiSquid: certain chars weren't counted into the total i think
Zenoscave: no unicode chars are two bytes but only one char
MSmits: meaning you can fit more information. It's not an exploit
inoryy: not really an exploit though
Zenoscave: yeah agreed
AntiSquid: but does it help with storing long decimals?
pb4: probably falls under the obfuscation rule
Zenoscave: 4 chars of bin packed
Zenoscave: and pb4 has a point
Zenoscave: Man Gold got hard fast
eulerscheZahl: legend is where the struggle begins
NinjaDoggy: you mean last day of contest gold
NinjaDoggy: is where the true struggle is
eulerscheZahl: :D
Zenoscave: legend is my goal. just getting legend is enough for me
NinjaDoggy: pass gold = automatic top 20 legend :/
MSmits: yeah thats what happened to me last time
MSmits: well before utg that is
NinjaDoggy: happened to me as well i think
MSmits: on ice and fire
NinjaDoggy: at least twice?
eulerscheZahl: my UTG story too
Counterbalance: is it posible that on some CG servers the code gets compiled to 32 bit?
Zenoscave: I doubt it
Zenoscave: but possible I suppose
eulerscheZahl: highly unlikely i would say
Counterbalance: yes, thought so
struct: at least for multies is no
Counterbalance: got some stackoverflow errors before main() at win32..
eulerscheZahl: CG has linux servers
struct: ^
Counterbalance: I know
eulerscheZahl: and they won't use both 32bit and 64bit compilers, as it's creating more effort in maintenance
struct: What is the error message counter?
Counterbalance: timeout
struct: no error from compiler'
Counterbalance: nope
Counterbalance: I'll look into it further - must be something silly
struct: What if you remove pragmas?
Counterbalance: it's intermittent - if i replay it often works fine
YannT: private enum class Damage { TWO, MAYBE_TWO, ONE }
YannT: I think I'm on the right track here
YannT: :nerd:
ZarthaxX: lmao
YannT: an integer isn't enoufg to express damage, you need an enum
eulerscheZahl: a double
YannT: and I'll add MAYBE_ONE in the next feature rollout
Zandy156: I really didn't think I'd be able to get into gold with movement that isn't based on the opponents actions.
MSmits: my bot moves randomly as well
MSmits: I just do a depth 0 floodfill to see if i dont lock myself in
Zandy156: I mean I get destroyed by mines, but they aren't that common yet I guess.
MSmits: mines are very common...
NinjaDoggy: this game is so sick
NinjaDoggy: too bad i'll have to swap to C++ later for more computattions
YannT: it's honestly not critical as of yet
NinjaDoggy: yea for now it doesn't matter
YannT: one of the top bots is python :p
NinjaDoggy: but in a few days it's gonna matter a lot
YannT: it doesn't feel like this is going to be an optimization centric contest
NinjaDoggy: why not?
NinjaDoggy: you can track the opponent quite well if yout wanted
YannT: yes but it doesn't take that much time
NinjaDoggy: but there's a lot you can do
NinjaDoggy: after you track them
MSmits: unless they spam silence :)
MSmits: then it takes a lot
NinjaDoggy: yep and that too
MSmits: btw, you can solve it by just exploding a few mines
NinjaDoggy: hm... maybe i should just do some stuff and get to bronze first
MSmits: I dont really see the benefit of sonar tbh, mines also clear the fog and they can actually do damage
NinjaDoggy: before i work on tracking and stuff lol
YannT: or just reset paths because there's literally no upside to tracking 1k paths anyway
MSmits: what do you mean there is no upside?
YannT: at that point it doesn't really prune anything anymore :)
MSmits: if you track the path, you have more cells he can't have moved to
Nagatwin: and info on the mines placements
MSmits: even if he lays no mines
YannT: unless you have every possible cell in the paths, then it does prune paths but not positions anyway (which is the end result you want)
MSmits: it does prune positions
NinjaDoggy: also if you track paths you can get better reads on positions
MSmits: if you know the path, then you know he can't move to any of the spaces on the path
NinjaDoggy: ilke if 10 paths lead to a certain position
MSmits: so you eliminate those positions
NinjaDoggy: and if only 2 paths go to some other position
YannT: okay but lets assume you have one path, right, then chain silence from that, you're going to have a few positions and a gazillion paths that cover all possibilities, so the paths won't prune positions anymore, might as well act like he surface and reset them
Counterbalance: 101250 paths max
MSmits: it's not black and white
MSmits: you should track all paths as much as you can, there's a good chance you can make it
MSmits: and if not, prune smartly
MSmits: dont just prune all paths
MSmits: prune partial paths
YannT: I'm not saying don't track paths in general, I'm saying at the certain point it becomes useless anyway (and that point requires the opponent to do nothing but silence which doesn't win)
MSmits: like, keep *some* visited cells as blocked, because they appear in all paths leading to a destination
YannT: this loops back to: performance is not that big a thing right now
MSmits: again... it's not black and white, it's not 100% useful or 100% useless. The more you track the better it is
MSmits: more paths stored does help
MSmits: even with a chain silencer
YannT: as a physics teacher you should really get more comfortable approximating stuff :p
MSmits: say there is a tight corridor he has to have passed in all 100k paths you have storeed
YannT: that's like, the entire difference between physics and maths
YannT: being able to say "this is annoying and also negligible" :p
MSmits: yes but I think it's not negligible
NinjaDoggy: nothing's negligible when pushing for top 5 :P
YannT: like friction in physics, it's always a thing until it's not because it got annoying to deal with
MSmits: also think about this Yannt, say he has 100 possible positions
MSmits: some of those possible positions have thousands of paths leading to them
MSmits: but some have maybe 3
MSmits: and the 3 paths share a lot of common characteristics
NinjaDoggy: ^ my point earlier
YannT: MSmits: my entire point is that literally never happens in a proper game
MSmits: if you just clean the whole history... you're definitely losing out
chucknorris: adn if u want to go deeper than 1ply I think knowing where the enemy can step is a must
MSmits: YannT if you mean that you never run out of memory and calculation time, then you're right, chain silencers dont exist at the top
MSmits: mines will make sure you can simply track all
YannT: typically against a chain silencing bot you'll have like maybe 30 positions for 1k paths, and at that point keeping those paths is useless because 1) it doesn't prune anymore and 2) you're against a bot who does nothing but silence and you've put mines everywhere so you're gonna win
MSmits: unless he knows where you put em :)
chucknorris: btw its usually max n points and 5n paths
YannT: well I've yet to see a silence spam bot perform well :)
Nagatwin: Saelyos
MSmits: but sure, there is a good possibility it wont benefit you much to do minimal pruning, but while prune too much if you dont have to
MSmits: I literally have a 20 line function and some hashing to do minimal pruning when i have to
Nagatwin: Anyone has some advice about memory managment for the paths ?
MSmits: why prune too much i mean
YannT: of course if you can handle a gazillions paths then feel free too of course, my entire point is it's not critical for success (looping back to: performance doesn't really mattter yet)
MSmits: ahh ok
MSmits: then you're right
Nagatwin: Atm I have a vector<path_struct *>, using new to duplicate paths and delete when these are not relevant anymore
Counterbalance: Nagatwin i just store all paths and some grids per path; my struct size is around 70MB
Nagatwin: CounterBalance using an array ? a vector<struct> ?
Counterbalance: each path is unsigned char positions[MAX_TURNS]
Counterbalance: I chose not to use STL here because of performance.. malloc/free is very slow
YannT: MSmits: you know what was a good idea tho, your plan for tracking mines
JBM: Illedan, Illedan, Illedan
YannT: I implemented it and kudos to you, it works wonders
Nagatwin: Counterbalance : I need to store more than an array of chars per path
JBM: that message was not a questoin to you! O:-)
YannT: my paths are int[15]
MSmits: YannT cool, good to know
Nagatwin: Counterbalance I feel like moving my structs around the array when I delete one is more costly than having to free/new
YannT: and, thatt also fits mines quite conveniently :)
MSmits: do you do this in 32 bit now?
MSmits: I switched to 64 bit myself
YannT: yes
Nagatwin: Msmits I guess I figured out the way you work with mines
Counterbalance: a copy of a struct is far faster than free/malloc Nagatwin.. I do a compact iteration after the updates
YannT: int[15) = 32 bits per row, 15 for path, 15 for mines
YannT: fits perfect
Nagatwin: http://chat.codingame.com/pastebin/1b6ad14b-7f91-4bf2-899d-9084dd0ad609
YannT: and the idea to put mines in there was yours :)
MSmits: ahh ok
MSmits: yeah thats what i do Nagatwin
MSmits: I changed mine to 64 bit for now
Nagatwin: Oh does it matters ?
MSmits: i had some bugs before and i wanted to eliminate the possibility of overflow
Nagatwin: I had a 64 too
MSmits: the thing is, in practice it never happens that a place is visited 4 times
Nagatwin: didn't you have a hp map or something ?
MSmits: so a mine will never be laid from it 4 times
MSmits: but what if i prune visited cells
MSmits: then they can be visited again
MSmits: and i might get overflow in my sim
Nagatwin: Counterbalance I'm curious, how do you know that ?
MSmits: Nagatwin i have a damage map but its not in my state
Nagatwin: MSmits oh ok alright
MSmits: i pass it down through my order processing and at the end of processing i use it to filter the state
MSmits: it goes down a recursive function
Nagatwin: Yeah
YannT: I had a damage map, ended up getting rid of it
Nagatwin: filtering through state hp too
Counterbalance: Oh for one thing, flat arrays are many times faster than stl vector, and I've read and written several malloc libraries. They use linked lists, region splitting/merging etc.. a lot of overhead
YannT: it was faster to just scan ceels
YannT: cells*
Valdemar: MSmits you do not need visited cells after surface and so on for mines it's reasonable though
MSmits: no after the surface, you reset visited cells
MSmits: but its still part of the state
MSmits: because you got 1 visited cell already
YannT: if you keep mies on say the high 15 bits of an int, path on the lower 15 bits, you can reset paths within resetting mines :)
YannT: assuming a 32 bits int
MSmits: yeah you can do that. I do think you still do it differently though Yannt
MSmits: you track mines directly
MSmits: I track places from which mines were laid
YannT: yes, per path, it's linked
Valdemar: MSmits of course do you guys try to minimize amount of memory?
YannT: prune a path, prune the mines that go with it
YannT: it's perfect :)
Counterbalance: Nagatwin if I remove a path, I copy the last path in there and reduce the size of the array; I don't have to copy the entire array if I remove the first entry, like vector<> does
MSmits: dont think memory is a problem valdemar, but minimizing memory maximizes speed also
YannT: MSmits: I keep track of places the mines were laid too
MSmits: but if you only have 15 bit, how do you track multiple mines being laid from the same cell?
YannT: not the mines themselves (you don't know where they are, it's a 1 in N chance)
YannT: it's true I don't
MSmits: is this a problem?
YannT: someone could surface, go back, lay another at the same place and it wouldn't increase my odds when it should
MSmits: hmm ok
YannT: not really because the possibility of a mine being laid from there still exists anyway
YannT: it should be higher, granted
YannT: but in the end you wanna avoid mines anyway :p
MSmits: yes, but you dont just use it to avoid them
MSmits: you also use it to track the opponent
MSmits: when he explodes one
YannT: true, I could remove a path unduly because of that
MSmits: that was my worry. But it is probably extremely rare
YannT: if he explodes both and I consider it not possible
MSmits: like our earlier discussion
YannT: never saw it happen yeah :)
MSmits: I actually have a if statement that kills my bot if i have no possible position left
MSmits: never happens anymore
Nagatwin: Counterbalance yeah that's what I thought about
MSmits: Nagatwin you were right the other day btw
MSmits: you said my method leaves out one rare bit of possible information
Nagatwin: but my vector is a vector of pointers so it should not be too expensive
MSmits: i thought about it some more
domenico.lordi: any python coder?
MSmits: if an opponent lays a mine somewhere and in your sim, he lays a mine at the same position during a time before it has exploded (two mines in same spot), then that is actually an impossible state
Nagatwin: MSmits actually I said that because I did not though that you were having 1 position per path but a list of possible ending position for each path
MSmits: my method doesnt respect the order in which mines were laid, just the position from where they were laid
MSmits: so a mine might explode, get removed and another mine laid in that place
MSmits: that has to be checked for timing, for perfect tracking
Nagatwin: Oh I see
YannT: well, I abide by the YAGNI concept
MSmits: I can do it actually, but I need another 16 bit map to fix that
YannT: until it screws me over, it's not an issue :p
MSmits: not sure if i will
Valdemar: update tracker during processing enemy actions should be sufficient
Nagatwin: MSmits does the order matters ?
MSmits: on the real path, two mines never get laid in the same place before 1 has exploded
MSmits: but one of your tracked states might do this
Nagatwin: Oh yes
MSmits: you could have eliminated this
YannT: unless there's a surface in the path
MSmits: if you checked the timing
MSmits: YannT yes
Nagatwin: Not only the timing but also the amount of nearby available cells
MSmits: yes, well that should be counted. I am already tracking that I think
Nagatwin: I handle this when I generate a mine map but not during the state update, I felt like it was unnecessary
MSmits: these are super rare issues, I doubt it's worth anyone's time
MSmits: I just wanted to let you know you were not wrong when you said you felt like my method is missing some bit of info
YannT: I don't think checking for "double laying of mines" would prune a lot because you have a verry little chance to have two line laying positions where there's no option for for them both to be in the same place
Nagatwin: Yeah :D
Valdemar: is sounds like spending much time to optimise 0.01% cases
MSmits: it wouldnt prune anything probably YannT
MSmits: it's a perfectionist issue
YannT: ;)
YannT: you know what is an issue tho, my eval not taking a guaranteed 2 dmg torpedo because it considers that would give my position away too much
YannT: I really need to rewrite it...
MSmits: you mean it would need to get 1 cell closer?
YannT: no no
YannT: it can shoot
NinjaDoggy: lol
NinjaDoggy: "wortH'
YannT: chooses not to
MSmits: thats bad yeah
MSmits: my bot just fires when it can
YannT: because the tradeof in detection isn't worth it according to it :p
MSmits: well above a threshold
MSmits: it's still blasterpoards 0.7
JBM: you've been talking about that rewrite all day
YannT: well in my defense I was #1 for a while I wasn't gonna screw with that
MSmits: my current bot doesnt care if anyone sees it. Minespam ftw
Valdemar: YannT you use some kind of search with all actions to certain depth?
JBM: we're 3 weeks from contest end
MSmits: 2 now
YannT: for now it's basically 1-ply bruteforce
MSmits: i'm not in a hurry
JBM: I was counting with 6-day weeks /o\
MSmits: trying to make my uttt solver use ab pruning with draws :P
Valdemar: including enemy moves or just yours? YannT
NinjaDoggy: :O
NinjaDoggy: i tried that for a bit
YannT: no 1-ply
NinjaDoggy: never really got it to work :/
NinjaDoggy: or it just gave no performance improvements :(
YannT: next rewrite eval, then 2-ply :)
MSmits: you mean the solver?
NinjaDoggy: yea
NinjaDoggy: ab pruning with draws
MSmits: it works well on some games. On uttt small improvement, not easy to notice
Illedan: Hi
MSmits: oh the ab pruning specifically
MSmits: i have no idea, it doesnt work yet
Valdemar: So you get to the top6 with only that? Impressive
YannT: ab pruning on minmax is typically a drastic improvement on most games
MSmits: no this is mcts solver YannT
MSmits: not minimax
Illedan: minmax on ooc?
MSmits: no lol... uttt :P
YannT: yeah I think that would be good Illedan actually
YannT: that's my plan
Illedan: Sure, play vs all possible locations and paths :D
YannT: especially when ennemy uncertainty is low, seems very appropriate
MSmits: beamsearch might be better
karliso: How do you do minimax in this game?
MSmits: dont think you do karliso
Illedan: Sure you can
YannT: beamsearch is hard to implement here I think when you think about it
Illedan: But you need assumptions
MSmits: well there are so many ways to do searches in ooc, we may be talking about different things
YannT: you're gonna end up with 10 order combinations with same of similar scoring, it's gonna be like SILENCE 1 N, SILENCE 2 N, etc
MSmits: I was more talking about a search as in Hypersonic. Navigating an existing possible minefield using beamsearch, ignoring opponent
YannT: so it'll be hard to take the "N better options"
Illedan: Branching factor is not too high in this either
MSmits: not if you know where he is, no
YannT: I think you really need minmax to show you that the difference between moving here or one tile over is a torpedo in the face
YannT: 1-ply will tell you these are equal or close, opponent turn will show you it's really not
YannT: at least that's my thought
ronlobo: Anybody using any reinforcement learning or genetic algorithms for this?
Illedan: Think the most advanced bots are react bots with some pathing searching and complex ifs
MSmits: thats what i was planning to code
Illedan: I'm working on my search :P
YannT: at that point I think all bots are 1-ply bruteforce of order combinations with some description of eval
Illedan: My if spagetti is just making me sad
YannT: you can see it in the "surface killshots"
Beerus: how can i get the inputs from debug error stream
YannT: crazy finishers like SURFACE|MOVE N|SURFACE N 4|TORPEDO DEAD
YannT: happens if you combine all orders and see what happens
YannT: SILENCE* :p
Valdemar: YannT yeah, they looks really fun
karliso: So this game is more strategic than search based...
Illedan: At the moment
YannT: for now yes
MSmits: karliso, provided you write a good tracker first
Valdemar: I planned to realise that even further with mine placement and instant trigger, but rules don't allow that:unamused:
MSmits: you need this or your strategy wont help you
YannT: performance or algos are not much of a thing at this point
Illedan: You need to search for the opponent though..
YannT: opponent tracking is all heuristic yeah :)
Beerus: how do i copy paste the console
Valdemar: Beerus you can copy paste by hands, or try automate it with post request to codingame server
Valdemar: there is post from magus describing more, but you still will need research. There is no ready to use solutions
Valdemar: post on forum I mean
Beerus: i will try by hands
JBM: hey Illedan/eZ if any of you still around, I was wondering if I got it clear
JBM: is win/loss ocndition checked per action or per turn?
Illedan: hm?
Illedan: ye
YannT: it's per action
YannT: you win on the frame someone goes to 0
Overacter: afte4r surfacing the x and y coordiante change is that normal?
JBM: even if you suicide like worse later in same turn
Illedan: ye
YannT: yes
Illedan: should be the same Overacter, unless you move too..
Overacter: after surfacing i move in x driection but the y ccoridnate changed instead of x
Overacter: befor surfacing all ccordiante where right
Illedan: Replay?
Overacter: https://www.codingame.com/replay/445144836
Illedan: You not at 0 14 after the surface?
Overacter: yes but i moved and the position keeped the same
Overacter: that messed up my position tracking
Illedan: You sure you don't overwrite some position or something during Surface?
Illedan: Do you forget to clear the path in your code?
Overacter: $x and $y come in every loop
ZarthaxX: reading x y wrong from input? :P
Overacter: fscanf(STDIN, "%d %d %d %d %d %d %d %d", $x, $y, $myLife, $oppLife, $torpedoCooldown, $sonarCooldown, $silenceCooldown, $mineCooldown);
fscanf(STDIN, "%s", $sonarResult);# error_log(var_export(['d' => $dirI,'x' => $x,'y' => $y],true));
Illedan: Maybe you print 2 lines when doing surface?
Overacter: no and i never set $x and $y
Overacter: i allways keep the input
Overacter: i can track my position myself but that not should not be needed
Overacter: a replay with only output after reading input https://www.codingame.com/share-replay/445150119
Overacter: have fun
Valdemar: only you can see your debug output
Valdemar: so there is nothing interesting in this replay at all :grinning:
Valdemar: try use MSG for that
JFB: Strange - I received message "Better than the boss in Ocean of code" - you will be promoted to Gold league soon - it was abot 5 h ago - but I'm in silver still. It was wrong message?
Counterbalance: they botched it and put everyone back in silver and tried again
icecream17: you missed the whole thing
Valdemar: inside IDE on each turn you see debug output for the next command you don't printed yet. It may be confused at first Overacter
JFB: OK - :-)
DEIZ21: hey illedan, Bravo for the ranking.
Illedan: ty
DEIZ21: ll u share your code when the contest finish? i would be interrest
DEIZ21: if not i can understant ;)
JBM: IMHO it'd be easier to understand if he did share it
DEIZ21: hhh i meant i can understand his decision
Astrobytes: lol DEIZ21 the contest will come back as a multiplayer game after the contest ends, so code sharing is generally frowned upon
Valdemar: on my view postmortem is far more useful, you can understand little from cryptic contest code everybody written there
Astrobytes: Valdemar yep
JBM: not all PMs are created equal
DEIZ21: it's my first time i code an ia
DEIZ21: i need much ressources
Valdemar: welcome to the club then
Astrobytes: You got 16 days DEIZ21 :)
DEIZ21: i do work, i have a wife and children..
Astrobytes: I mean, the competition has 16 more days, so use your spare time wisely ;)
ZarthaxX: and leave your family
DEIZ21: yes i have some ideas but i dont think they ll enhance my bot that much
Astrobytes: Yes. CG self-isolation
YannT: using spare time wisely probably shouldn't consist in playing submarine :p
Beerus: i am trying minimax too
Astrobytes: lol, depends I guess YannT :D
Valdemar: totally right, is should consist of writing AI to play submarine
DEIZ21: minimax?? how the hell is this possible
YannT: very possible imo, that's my plan for the future
Beerus: branching factor is huge, u need to expand the "best" actions
muy31: ok, am i in gold league or silver?
DEIZ21: possible but you need to evaluate the board and precomputed position evaluation
Astrobytes: If you are tracking your opponent well DEIZ21 then you can minimax
DEIZ21: it's not a complete information game..
muy31: it is a good enough info game
DEIZ21: sorry, i dont think so
Astrobytes: That's why tracking your opponent is important
muy31: ive been using minimax since wood 2
muy31: to movce
muy31: move
LegendsOfCodeAndMagic: how deep minimax you can make..
muy31: gold
LegendsOfCodeAndMagic: mincuding opp answers?
Beerus: depth depends on actions
Valdemar: muy31 so you respect possible enemy movement when making decision?
muy31: yes
DEIZ21: i need to enhace the opp tracking
muy31: i actually base it on whether I wan to move aggressively toward enemy or defensively away from it
DEIZ21: yeh this is a good idea
muy31: no, it is,
muy31: in implementation it is
Valdemar: how do you deal with enemy uncertanity?
Valdemar: there is hundred of possible positions
muy31: i set a score based on how many moves i have left and on how close/far i am from enemy
muy31: i then simulate my turns
muy31: based on that
DEIZ21: how do you know how many move you have in the openning and middle game
muy31: i mean like available squares to move on
Astrobytes: muy31 you're in silver
muy31: hey no
muy31: i just got a notification
muy31: from CG
wlesavo: the cake is a lie
Astrobytes: No, they accidentally promoted all of silver to gold earlier, then had to resubmit and recompute
YannT: it's from a botched league opening
YannT: everyone got the notification
muy31: RIP
DEIZ21: i m ranked 98 silver and your bot just beat mine 3 times
muy31: nvm
muy31: me?
muy31: but my bot is broken right now
muy31: sometimes it tries to go back to a previous square after using silence
icecream17: I found a timeout error. Resubmitting
Beerus: guys try beam search minimax
DEIZ21: what the hell it beats mine every time
DEIZ21: you're raked 235 and i 98
DEIZ21: ok it must be an overall score
muy31: yeah
muy31: but you just beat me just now
DEIZ21: so some strategies doesnt work with somme other even if better raked
muy31: https://www.codingame.com/replay/445161003
muy31: yes that is true
Astrobytes: "replay and share" just under the viewer
muy31: in your match viewer click "replay and share", then copy link
DEIZ21: https://www.codingame.com/replay/445160683
muy31: me winning probably had to do with the map
YannT: muy31: you still have pathing issues
YannT: https://www.codingame.com/share-replay/445162438
YannT: you surface a lot
muy31: i have those issues b/c of my attempt to use minimax while moving
muy31: cause i don't just base it on which squares i can go but also where my opponent could be, as I am trying to get closer
muy31: emphasis on trying
muy31: thanks tho YannT
muy31: ok YannT I can also explain
muy31: you use a lot of mines, and i mainly use Silence to get away from squares that could be mines
YannT: but you're killing yourself on a side :)
muy31: however, whenever I use SILENCE, there are weird bugs
muy31: in my move function
muy31: that i haven't been able to fix
muy31: Currently, i have started over
muy31: and am creating a new program
Illedan: Did you remember to save the path you have been using?
muy31: yeah i have a boolean array
muy31: after i move w/ silence or move i set my positions to false accordingly
muy31: i believe
struct: 6 different languages in top 10
struct: Even haskell rank 11
struct: damn
inoryy: OOC perfect contest confirmed?
struct: Only if D wins
inoryy: good point
MSmits: Does D have a profile tag now?
struct: no
MSmits: sad
struct: Its to prevent bully
MSmits: D-bullies?
struct: bullying*P
struct: So others users dont bully them
MSmits: bully who?
struct: D users
AntiSquid: oh just now noticed the name of the silver boss, good choice Illedan / euler
MSmits: ahhhh
MSmits: what is it
Astrobytes: Captain Haddock
MSmits: ah ok cool
AntiSquid: ya
MSmits: well I just succeeded in making my uttt solver a lot better
MSmits: but
MSmits: I noticed a bug that means i have to recalculate my meta mcts solved nodes :P
MSmits: which is extremely annoying
struct: When submit?
MSmits: after contest :P
MSmits: I'm doing this part time
NinjaDoggy: are you zoom meeting to do your lectures? :P
MSmits: google meet
AntiSquid: lol silver boss has serious tracker
struct: Seems like some security flaws have been found in zoom
NinjaDoggy: oh really? ._.
struct: Yes
AntiSquid: no gimmicky stuff allowed in gold eh?
NinjaDoggy: ok time to submit 1 ply movement only bot and see if i can get bronze :P
AntiSquid: what security stuff struct ?
AntiSquid: so many people use it .
inoryy: and by some you like dozens?
struct: security vulnerabilities
AntiSquid: uhm thanks for the detailed explanation
Illedan: No you can't NinjaDoggy :D
Illedan: Wood 1 boss is gonna let you down ^^
NinjaDoggy: :(
struct: https://threatpost.com/two-zoom-zero-day-flaws-uncovered/154337/
AntiSquid: illegal infringement violations
elderlybeginner: you have variable x. How to make range 0...x plus (x+5)...14 in python
elderlybeginner: eg. for x = 3: range(0, 1, 2, 8, 9, 10, 11, 12, 13, 14)
AntiSquid: thanks struct, the "Other Security Flaws" section is most interesting
inoryy: [*range(x), *range(x+5, 15)]
elderlybeginner: yep, should be working, thanks, maybe even expression generator can be used
muy31: Is this contest going to stay on CG even after it is completed?
struct: yes
muy31: like the other games (coders strike back, etc.)
muy31: ?
struct: yes
muy31: how come it only stays sometimes?
struct: Depends on sponsors I guess
muy31: i missed detective pikaptcha for example
muy31: never got to play it
struct: its available
struct: you can play it
struct: its in puzzles
struct: Type detective on search bar
AntiSquid: it's not a multi
muy31: oh
muy31: thanks
muy31: are there other contests tho
muy31: that were no longer available afterward?
struct: Some
AntiSquid: The Great Dispatch - bin packing algorithm
struct: Private hackathons
struct: The accountant
AntiSquid: ah ya those
muy31: ok thanks
struct: I would really like to try The Accountant agian
struct: :(
AntiSquid: that's the upside with newer games, easier to download and keep them if they never return :D
struct: If referee is public sure
Hithere: Colleagues, is it possible to use silence and move in the same turn? Is it possible to use torpedo and silence in same turn? What's about silence+move+torpedo?
struct: all above are possible
Hithere: Great! thanks
elderlybeginner: does silence + move make sense?
AntiSquid: Hithere Comrades*
R4N4R4M4: Je crois que j'ai le bon bot pour faire passer tout le top silver
R4N4R4M4: Je gagne le Boss et je perds contre le top 10 ;D
R4N4R4M4: spam push donc
R4N4R4M4: je vais mettre l'ép3 de la Casa de Papel en même temps
Astrobytes: ç'est n'es pas FR R4N4R4M4 :P
Astrobytes: *n'est
pb4: new meta : https://www.codingame.com/share-replay/445196639
vasylbo: back to beginning, who surfaces less times
YannT: pb4: :joy:
wlesavo: pb4 this looks exactly like my selfplay
TheAlmightyBreakfast_9ce7: How do I make the text larger
Kukiss: In a place where you put the code?
Kukiss: ctrl + ,
Kukiss: then change Font Size
icecream17: Although my IDE code won against the code in arena 4 times in a row, i
icecream17: still think it's worse
R4N4R4M4: Vry je t'ai fait passer en descendant le boss :D
R4N4R4M4: Et c'est bien parti pour moi aussi
struct: I think wrong chat R4N4R4M4
R4N4R4M4: Ho sorry, Hi everybody, I'm lost :D
struct: hi :)
69razer69: hola
tekki: hi Rana
icecream17: YAS I won 5/10
Alexzz: Hello!
Kukiss: Hi
metahom: hey
ProjectAlchemist: Hello World
sayori: wuhan happy