Chat:World/2020-04-10
uhv: can anyone explain how im supposed to do these without prior experience with coding ?
eulerscheZahl: codingame assumes that you know the basics already
uhv: oh i see, no wondering im going nuts here.
uhv: any recommendations to learn the "basics"
slamo: getting "Unknown error (stacktrace too big)" in python, any idea how I can see the error?
eulerscheZahl: deep recursion
eulerscheZahl: which resulted in deep recursion?
thibpat: Hello! I'm streaming Ocean of Code now https://twitch.tv/thibpat
YannT: kovi did you make an algo to timeout people on purpose? :p
kovi: do i?
YannT: well it seems to be working on me :p
Nagatwin: looks like you make me timeout too
Nagatwin: told you your code was maxing the possible paths ina way or another
YannT: lays a few mines and then chain silence :D
YannT: it's not a bad strat actually, seems to work well :p
kovi: i timeout myself as well
Nagatwin: yeah Same strat
Nagatwin: kovi thanks to my dupe checker I get as low as 10% your paths sometimes
Nagatwin: https://www.codingame.com/share-replay/447425902
kovi: i will need that as well, to be able to opt for highest non-duped paths ;)
pb4: I thought I was immune to timeout kovi
pb4: You manage to make me timeout, I don't understand how -_-
Nagatwin: kovi haha
Nagatwin: Could be an idea to make a simu that maxs out the possibilities
Nagatwin: how to crush legend
eulerscheZahl: that's something for a last minute submit
Zandy156: I thought most of the top bots would be immune to timeout from that by now, but several of them aren't.
ThomasNicoullaud: eulerscheZahl if you push all the day, you ll made me the first :D
eulerscheZahl: don't worry, not my intention
eulerscheZahl: when did you become a mod? :o
ThomasNicoullaud: 2 months i think
ThomasNicoullaud: :nerd:
eulerscheZahl: you should be more active in the english chat for me to notice
eulerscheZahl: damn, submit started will. i was close to getting optimistic :(
ThomasNicoullaud: i never write here
ThomasNicoullaud: my poor english, shame on me
ThomasNicoullaud: go #fr ;)
Nagatwin: This one is a bad version eulerscheZahl it achieves 50% wins against me
Nagatwin: :cold_sweat:
eulerscheZahl: my French is much worse than your English
eulerscheZahl: we can meet at #De if you want
ThomasNicoullaud: ahah
ThomasNicoullaud: Go #China together for more equity
BlueBull: http://chat.codingame.com/pastebin/f6b10608-9eda-4f0b-9d60-66e226d8a91c
eulerscheZahl: if think #World is the fairest solution. Both of us aren't native speakers
eulerscheZahl: but we are able to communicate
darkhorse64: BlueBull: stop pasting garbage in the chat
eulerscheZahl: ThomasNicoullaud https://www.codingame.com/replay/447376770
BlueBull: http://chat.codingame.com/pastebin/f28fb100-6455-4139-9beb-8fb78b1a5fd9
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
eulerscheZahl: also: you are a mod now
ClashLuke: Just out of curiosity, what would stop me submitting my c solutions as cpp and obj-c?
eulerscheZahl: nothing, why should it?
eulerscheZahl: because of language achievements?
eulerscheZahl: i did worse for getting them: calling python from bash
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty
BlueBull: http://chat.codingame.com/pastebin/c2bc3b22-9596-4feb-982b-b58d021ff6ec
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty sdfsdajfasfjsadlfjsdal;fjlsafaldsfjlsdfjl;asdfj
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty sdfsdajfasfjsadlfjsdal;fjlsafaldsfjlsdfjl;asdfj
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty sdfsdajfasfjsadlfjsdal;fjlsafaldsfjlsdfjl;asdfj
BlueBull: dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty dkdjslfjdkaheoghewoth 34uth 4t43qty 94y3t y3r tyerwtyeriashtsaeoisafodghorhwepo 34t98ywt q438ty sdfsdajfasfjsadlfjsdal;fjlsafaldsfjlsdfjl;asdfj
SeebOmega: not fast enough
SeebOmega: Thanks MadKnight
eulerscheZahl: thanks to both of you
SeebOmega: eulerscheZahl thanks and sorry for not paying attention, I havent finished my coffee yet xD
ClashLuke: Calling python from bash sounds like a nice thing to do for codegof
ThomasNicoullaud: ty eulerscheZahl
eulerscheZahl: no need for excuses SeebOmega
eulerscheZahl: spammer was here, gone now that's all that matters
chucknorris: silence meta is back kovi ? :P
kovi: actually it was not on purpose
Nagatwin: These chain submits really screw up the ladder
Nagatwin: wlesavo / eulerscheZahl submit : I get +3 rank
Nagatwin: kovi / chucknorris submit : I loose 3 ranks
Nagatwin: only dbdr seems neutral
Nagatwin: I can tell who submitted the most based on my rank at a given time of the day
dbdr: :D
eulerscheZahl: nice strategy: "he won't find me when i'm on an island" https://www.codingame.com/replay/447428330
Nagatwin: There's fairly enough space to go between those two anyway
wlesavo: wow, this is some actual piece of tactics https://www.codingame.com/replay/447450104
wlesavo: keeping a mine for close fights seems to be a good idea
Nagatwin: clean
Nagatwin: is he doing that all the games ?
wlesavo: not exactly that
wlesavo: but he keeps a mine just in case
Nagatwin: https://www.codingame.com/share-replay/447451297
wlesavo: without actual spaming
Nagatwin: he places mines directly in front of others
wlesavo: well it is effective in these close fights, especialy if you have better finisher, my finisher can produce some draws, but i guess its better then loses
Nagatwin: Yeah
Nagatwin: Can you trigger a mine you just placed ?
chucknorris: nope
Nagatwin: nvm
Nagatwin: yes just saw that
Nagatwin: that's kind of sad
chucknorris: I'd increase the branching factor by a lot so I'm okay with that
wlesavo: still effective, just a little harder to manage
SilverBlade: yo
wlesavo: chucknorris agreed
Nerchio: My last 20 battles in the match history is against the same guy
Nerchio: why is it so?
wlesavo: he just submits a lot
chucknorris: spam submitters :rage:
eulerscheZahl: because that guy spam-submitted
YannT: stop timing me out kovi :p
wlesavo: fix it
pb4: He uses so much silences -_-
chucknorris: I timeout like every time
chucknorris: time to fix the part that I didn't want to touch anymore
AntiSquid: replays for the current submit disappear very fast
pb4: wlesavo : nice catch on Valgrowth's thing
ThomasNicoullaud: the winner ll be the one who pushes in the last second the silence chained strategy, and will timeout all the board :)
Nerchio: it's nice to see you guys timeout as well sometimes :D
Nerchio: it's not only a silver problem
chucknorris: I thought I no longer need the pruning code in gold so I gently removed it :p
Nerchio: so that makes spam silence one of the strongest strategies?
wlesavo: not really
wlesavo: unless you have much to support it
pb4: Nerchio : spam silence isn't the be-all-end-all no
pb4: at least not for me
Mattwei: test test
Piemert: I want to tweak my parameters by machine learning. Can I get the code somewhere to use it as an API for playing games against myself?
eulerscheZahl: you should play against yourself offline instead
eulerscheZahl: it's faster and less stress for the CG servers
eulerscheZahl: there's a link to the source in the statement (expert rules section)
eulerscheZahl: https://github.com/CodinGameCommunity/ocean-of-code
Piemert: tnx
wlesavo: may i ask you guys to warn me to stop clicking submit button an hour or two before promotion happens
Illedan: Did you try to use benchmark instead of spamming? :P
wlesavo: nop :slight_smile:
wlesavo: is there a good guide on benchmarking?
eulerscheZahl: how many submits are there in your history?
wlesavo: around 400
Illedan: wow
eulerscheZahl: and i felt bad for my 130
dbdr: 158
Illedan: 160 :O
kovi: chuck has 1000
Illedan: Too many the first weekend
wlesavo: this is only half of chucks
chucknorris: no kovi I only have 965
eulerscheZahl: wait, i have 131 submitted the java default AI once because i was curious
dbdr: I have 2 JS ones :)
eulerscheZahl: dummy opponent to test against?
wlesavo: but i cut most of submits early
dbdr: no, sub in the first minutes
dbdr: but still after the broken bot
eulerscheZahl: broken boss promotion
dbdr: nope
eulerscheZahl: oh
dbdr: actually I think it might have been good I missed it
dbdr: forced me to work on tracking since wood 2 :)
eulerscheZahl: did you know that CG has no versioning system for our submits? they save every code as a new one. no diffs
dbdr: not surprised
dbdr: if I was them I would at least handle identical code
dbdr: to handle spammers
Nagatwin: I guess checking for identical code would be the same as versionning
dbdr: easier
dbdr: just a checksum
eulerscheZahl: with your knowledge from today, yes CG started as a puzzle site, not even multiplayers
wlesavo: dbdr same, had most of the tracking ready in wood 2
dbdr: sure. but that could be added to the system
dbdr: I know it's still work
dbdr: kovi how many submits? ;)
kovi: 512
dbdr: nice round number
wlesavo: wow
dbdr: someone said 1k for chuck?
chucknorris: 965
dbdr: I see more subs from kovi. might depend on the schedule
eulerscheZahl: xkcd.com/1000 typed that link out of my head
eulerscheZahl: oh, not linking https://www.xkcd.com/1000
dbdr: https://xkcd.com/1024
dbdr: did not follow up
dbdr: but also nice
eulerscheZahl: i need that book too
eulerscheZahl: made a small biking trip yesterday, as working from home makes me sit all day
dbdr: yeah, needed. this morning I found out they closed one access to the lake nearby, not sure yet why
JackJohnson: Hi, i wasn't on codingame for a while, but i remember that i could configurate my Console output to be side by side to the Viewer. Anyone know how it could be done?
eulerscheZahl: CG Enhancer?
eulerscheZahl: in case you missed it: we have a contest running ;)
JackJohnson: Yeah, i'm in it :) Wood 1
eulerscheZahl: interesting biography text. what's your current profile completion state?
eulerscheZahl: i'm at 80% and it tells me to rate my company
eulerscheZahl: ocean of code
Nagatwin: eulerscheZahl if you do not specify a company I beleive you are at 100% :p
Nagatwin: the 80% showed up when I selected a company
eulerscheZahl: my company isn't even correct anymore
eulerscheZahl: updated
JackJohnson: couldn't remember what i typed in bio, just looked it up again :)
Nagatwin: ahah
Nagatwin: Energy
eulerscheZahl: yeah, our CEO got crazy
eulerscheZahl: opted for a carve-out
AntiSquid: about the "rate your company", where do you see what you wrote previously ?
AntiSquid: who is the rating for anyway
eulerscheZahl: "These reviews will be published anonymously and will give you an idea of where developers love to code!"
AntiSquid: published where?
eulerscheZahl: i guess same as for their annual surveys
eulerscheZahl: but i don't know
AntiSquid: i guess it's like glassdoor but with CG it's easier to narrow down the possible reviewers
Nagatwin: I'll make a "kovi special" AI I guess
pb4: "yeah, our CEO got crazy opted for a carve-out"
pb4: Curious as to what that means ?
eulerscheZahl: Siemens is a huge company with >300k employees so he decided to split it into pieces
darkhorse64: eulerscheZahl still well placed for gold boss
eulerscheZahl: initially planned to sell our division to Mitsubishi
eulerscheZahl: but rest of those in response voted against, so we founded a new company instead
eulerscheZahl: with >80k employees
eulerscheZahl: still not finished
eulerscheZahl: planned to go on the stock market in september
eulerscheZahl: and i don't want to be the gold boss darkhorse64 :scream:
kovi: these are hard times, even in it
eulerscheZahl: yeah, players get stronger
kovi: IT (or at least some part of it)
kovi: i meant RL
eulerscheZahl: oh, not talking about the contest
Piemert: anyway to set the seed and timeout locally?
eulerscheZahl: seed: yes
eulerscheZahl: timeout: no
Illedan: Can't you hack that with reflection?
Nagatwin: having 5200 paths stored in an array of 5000 paths
Nagatwin: what could go wrong ?
darkhorse64: What's the problem ? The gold bot moves to legend no ?
pb4: 200 paths
Nagatwin: pb4 haha
Nagatwin: That's what happens every game against kovi
Nagatwin: but the bot manages to stay alive 20 turns after that
Nagatwin: im quite impressed
pb4: darkhorse64 : everyone will optimize against the boss
pb4: so everyone entering gold league will have a strong bot against the person chosen to be the boss
pb4: hence that person will be pulled down in legend :)
Nagatwin: They should not take a boss that times out against silence spammers
Illedan: true
Nagatwin: otherwise this will be the same as the gold league opening
Illedan: I'll try to tweak this a little and maybe become the boss
Nagatwin: doesn't 28 sound low for a legend boss ?
dbdr: hence the tweaking
Nagatwin: Oh
Illedan: :P
dbdr: I assumpe tweak up, not down :)
Nagatwin: I understood tweaking as "avoiding timeouts"
Illedan: My bot just resets above 1000 paths
Illedan: no problem
wlesavo: spam silence boss :slight_smile:
wlesavo: make the spam silence great again
darkhorse64: Reset is risky. I have tried to stop silencing when my #paths becomes too large (not to lose tracking accuracy) but it was bad
AntiSquid: today is legend opening
darkhorse64: today is the day of deception
AntiSquid: after 3 PM expect massive submit spams, everyone panic submitting hours before it opens like it's their last chance to improve their bot
AntiSquid: or maybe earlier
Illedan: That will start after legend opens
AntiSquid: it starts even before legend
AntiSquid: hours before
Illedan: kovi timeout often?
kovi: not really. i will look into that
kovi: you are not deterministic?
Illedan: I'm deterministic yeah
Illedan: as long as you are too
kovi: wierd first replay was different
kovi: now its ok
Illedan: Wonder if I can crash players by placing multiple mines from the same location and then start triggering :D
kovi: not crash. but screw detection
dbdr: that's long term planning :D
wlesavo: i think many would handle it well
dbdr: it takes sophistication to fail on that :D
Illedan: I have a throw if I can't see the enemy anymore. Just to crash on bugs
Illedan: others might too
wlesavo: well it is a good strategy for a boss for sure
dbdr: I have that too
wlesavo: same
kovi: i dont
Illedan: :evil:
dbdr: might be good for the boss not to crash in that case though
wlesavo: well i just divide by count
dbdr: opens a vulnerability
Illedan: my code wont
dbdr: didn't you just say you do?
dbdr: you'll change it?
Illedan: oh yeah that. But I'm would not crash on multiple mines
dbdr: I meant crash on anything
Illedan: But I can't see what should crash it
dbdr: famous last words :)
Illedan: pffx
Illedan: :D
eulerscheZahl: Illedan working in the hope of becoming the boss?
Illedan: Sure
Illedan: if(time > 20PM ) EnableMinMax = true;
Illedan: ^^
eulerscheZahl: PM?
Illedan: 8*
Illedan: :P
Illedan: you get it
wlesavo: lol
eulerscheZahl: ah, pm, post meridiem
eulerscheZahl: the uppercase confused me, not even trolling
Illedan: aiit, mybad
eulerscheZahl: thought we were counting frames per game or something like that
Illedan: https://www.codingame.com/replay/447500821 euler, what is the logic behind your end game? All those surfaces? Afraid of mines?
eulerscheZahl: i remember using such a kill switch for the BotG recalc
dbdr: carpe legenda diem
kovi: euler surface: i still do the same
eulerscheZahl: my surface still triggers way too often
eulerscheZahl: yes, scared of mines
eulerscheZahl: on average 1.32 surface per game
dbdr: and your trigger surfaces? ;)
eulerscheZahl: i should clean that stat to remove kill turns from it
eulerscheZahl: as it doesn't matter if i SURFACE|TORPEDO <kill location>
eulerscheZahl: and i want a pie chart for charges used :D
Illedan: You want me to add it to the viewer?: P
eulerscheZahl: also dbdr wrong casus for the adjective "carpe legenda diem"
wlesavo: i actually fixed some charge problems, dunno if it helped though
eulerscheZahl: no Illedan for my internal stats which i do across multiple matches
dbdr: what's the correct way?
Illedan: aha
dbdr: I lke latin words but can't conjugate
eulerscheZahl: "legendam" would be closer but a particip from legere, nothing legendary
eulerscheZahl: it's even declinate unless you talk about verbs
dbdr: right
dbdr: I'm wrong about the way in which I'm wrong :D
eulerscheZahl: sorry, got tortured for too long to be able to ignore it now :D
dbdr: "5 which is to be read (aloud), recited."
dbdr: I knew that's where legendary comes from. something worth reading about
codingWhale: Quite intense: https://www.codingame.com/replay/447511730
eulerscheZahl: TODO find better spawn point
codingWhale: You don't think random is good enough? ;) At least, there was a fight! :P
DEIZ21: hey submarines what's up
DEIZ21: i have a question plz regarding self tracking
DEIZ21: what is the moment you compute it at the begining of the turn or at the end just before sending the command to the referee?
eulerscheZahl: you can answer that yourself: what state does your opponent get as input?
DEIZ21: yeh sure this is exactly my problem
DEIZ21: i implemented it and figured out that i done it incorrectly
DEIZ21: but to make use of the same data than the opponent i luck of the data sent by the referee to the opponnent (new life new opp life...)
eulerscheZahl: so you know the answer: you have to eval the board state after applying your own actions
DEIZ21: i already thought about this off course
DEIZ21: the problem is that in my tracking function i make use of the data indicating if the opponent was damaged or not, this data could only be given by the referee
eulerscheZahl: then you have to wait till the next turn to complete self-tracking
WINWINWIN: when does legend open in ocean of code?
Illedan: In about 4-5 hours
DEIZ21: this is exactly what i'm doing now but as i already said the computation ll be done on other data than what the opponent is doing his computation
DEIZ21: illedan i have a question plz
Illedan: sure?
DEIZ21: do you take into account the damage u take when tracking the opponent?
Illedan: no need?
inoryy: huh, two polish universities in top10
DEIZ21: ok cause i made some heuristics based on concidering the opponent smart enough to not damage him self if he doesnt touch me
inoryy: not to mention Wroclaw holding #1
aCat: ;-)
DEIZ21: but than i cant use the same method to self tracking
aCat: I have no idea how this happened
inoryy: haha
aCat: this cat is innocent
Illedan: xD
wlesavo: DEIZ21 that is not necessarily true
eulerscheZahl: my university doesn't even exist on that leaderboard :(
inoryy: same :/
aCat: make fake accounts and win the university leaderboard all by yourself euller ^^
Illedan: hmm
eulerscheZahl: you gave an idea for Illedan
eulerscheZahl: Illedan how is your colleague doing so far?
DEIZ21: thx wlesavo, i just tryed to take into account the force of the opponenet, if he isnt sure to damage me he wont damage him self, in the case where i fire and opp fire if ididnt take damge i supose my firing did all the damage to the opponent
DEIZ21: in case he lost 2 life i cut all the paths right away
Illedan: Looks like this game was too big of an onboarding to the platform.. :( But we will see..
wlesavo: DEIZ21 there is a better way do do this without any assumptions, you can just count all the damage from all sources, and then cut based on that
DEIZ21: yes but think of it if you guess what the exact source ang it happens you are right u cut much more paths
DEIZ21: off course you taking the risk of false assumptin but this is the deal :p
wlesavo: well for sure i cant cut based on that, only weight
DEIZ21: i m pretty shure it woul be right at 99%
DEIZ21: in your eval do you allow to damage your self without being sure to atleast dealing damage to the oppenent
DEIZ21: i guess the answer ll be no
DEIZ21: so i wanted to exploit this in my favor
DEIZ21: if i m not damaged i concider all the damage the opponent got comming from my fire
wlesavo: that shouldnt give much in terms of cutting anyway, basically you trade like 2-3% for 1% loosing track
DEIZ21: any way i ll get rid of this
wlesavo: but you can weight them to be like 0.01 of normal candidates i guess
DEIZ21: because cant use the same function for self tracking
DEIZ21: cause i dont have the data sent by the referee
wlesavo: but weighting didnt work for me in general, only for countering silence 0 for a while
wlesavo: i also thought that i could be able to predict spawning points, failed misserably
pb4: if(pb4) spawningpoint = 5,7
pb4: You're welcome
pb4: :)
Illedan: :D
pb4: (for real, check the replays)
Nagatwin: why ? :o
pb4: random with fixed seed will do that for you
Nagatwin: Oh
DEIZ21: i fail miserably in the confrontation as i dont simulate and my bot doesnt knwo how to deal
Nagatwin: I found a bug then
Nagatwin: https://www.codingame.com/share-replay/447521676
Nagatwin: you did not start at the right position :p
pb4: damn, I should start on land !
Nagatwin: Yeah
Nagatwin: let's play with tanks and not submarines
Nagatwin: sink them from the land
Illedan: I can swap the sub with a tank on land?
Nagatwin: kovi pushed you so damn high
DEIZ21: sure illedan but this is an other contest :D
Zandy156: It'd be really impressive if you did start on 5,7 even when it's land and were still #1.
Nagatwin: 36
Nagatwin: now 35.7
DEIZ21: a last question plz cause i need help;
DEIZ21: do you guys make use of opp life lost in the tracking?
DEIZ21: i guess the answer is off course yes
Nagatwin: yes to see if he got touched by a mine/torpedo
RockyMullet: goooooold baby
RockyMullet: just in time for gold to irrelevant :P
Uljahn: woah goldmullet gratz
RockyMullet: ty ty
RockyMullet: was stuck around 10th, added something in my torpedo code to allow dealing one damage to myself if it meant dealing 2 to the enemy and killing it
RockyMullet: seemed to be enough :D
Uljahn: shouldn't you do it based on a remaining hp? like when it's even for opp
Nerchio: gz rockyMulet :P i am around top10 silver
Uljahn: ahh, killing means finnishin move
RockyMullet: might be, the reason I didnt do it all the time is because the enemy can always shoot back and then deal 2 damage so I'd lose 3 in the head while he lose 2
RockyMullet: Nerchio I pushed the boss down a bit, it might help :P
RockyMullet: Uljahn yeah, the finishing move
AntiSquid: there's a storm on the gold ocean
RockyMullet: my mullet has a taste of the gold ocean's wind
RockyMullet: in a couple of hours all be back at peasant level
RockyMullet: when legend's out
Nerchio: legend is not out?
AntiSquid: 3 hours 15 minutes?
RockyMullet: did they annonce it ?
AntiSquid: oh everyone should start panic submit any moment now
RockyMullet: I just assume its somewhere around noon to 1pm my time, aka 2 or 3hs from now
AntiSquid: RockyMullet click on rank in the IDE
AntiSquid: it shows date
RockyMullet: yeah, today
AntiSquid: quite sure it's 3 hours from now RockyMullet, maybe i am overlooking some daylight saving change ...
RockyMullet: oooooh, maybe thats it
RockyMullet: yeah we are back at "summer time" now, even do it snowed yesterday...
RockyMullet: stabilized 191/243 in gold
RockyMullet: Nerchio your bot is probably better than a bunch in gold haha
BitMan: Hello Everyone! can someone please tell me of the upcoming challenge. How much of Python knowledge will be required to get participate in it
RockyMullet: BitMan there is an ongoing contest right now
RockyMullet: https://www.codingame.com/contests/ocean-of-code
AntiSquid: to participate not much
BitMan: No, i AM saying of the one name codingame summer challenge that's going to start on 7th may
RockyMullet: yeah if you can read the input and ouput something (which is usually already done in the default code) you can manage to do something
RockyMullet: BitMan we dont know what it is yet, but it likely similar in difficulty to the others
RockyMullet: I'd say either try your hand on the current contest or try the "bot programming" in the "compete" tab which are old contest challenges
RockyMullet: should give you an idea of how ready you are
dbdr: Illedan what rank are you aiming for?
Illedan: 1st +- 1
dbdr: gogogo 0th
dbdr: watch out for wrap arounds
dbdr: 65535th
Illedan: So, try to run away from enemy or try to run towards :thinking:
pb4: depends whether you're confident in your close-quarter combat :D
Illedan: My spagetti was born ready
blasterpoard: isn't running away almost always more solid?
Illedan: Not if you have less hp and less claimed territory..
blasterpoard: well, but claiming territory is something you can be more consistently good at than fighting
BitMan: RockyMullet Thanks, I will try the ones you suggest. :)
RockyMullet: gl :)
Illedan: hmm
blasterpoard: opponent just silences the turn before your torpedo is ready, and well, I guess it's 50/50 now
Illedan: Let's see how running away does
mrdude: who we can detect land
eulerscheZahl: x in the input of the first turn
eulerscheZahl: . for water
Nagatwin: hahaaaaaa
Nagatwin: last push got rid of this git issue
Nagatwin: "survive kovi"
eulerscheZahl: still below the toad :P
Illedan: lucky 12th toad?
eulerscheZahl: wait, i don't have a toad anymore
eulerscheZahl: https://www.codingame.com/replay/447555936 still playing stupid with mines, frame 37
pb4: how is that stupid euler ?
eulerscheZahl: i trap myself
eulerscheZahl: at some point i should just risk the mines i think
eulerscheZahl: and my danger map tells me that the mines can be almost anywhere
pb4: oh right didn't see that
pb4: I was just looking at where you put your mine :D
RockyMullet: is a danger map that useful for mines ? I feel it would be most of the time "there are mines everywhere"
Illedan: Far easier to track that I expected
RockyMullet: oh ok
eulerscheZahl: just hard to find the balance between safe and paranoid
eulerscheZahl: and i'm slowly getting lost in spaghetti
RockyMullet: add some sauce
Illedan: :D
eulerscheZahl: suggest a taste so i can say no
RockyMullet: a fish sauce
RockyMullet: adding something stinky over your spagetthi
darkhorse64: toad slime
RockyMullet: genious
Astrobytes: Spaghetti alla puttanesca
Schinkey: how do I output stuff to console without it registering as a solution?
ZarthaxX: fish sauce is a thing carne?
Astrobytes: puttanesca has anchovies
RockyMullet: I guess you are not used to asian food carne
darkhorse64: push play not submit
eulerscheZahl: and that's where you lost me Astrobytes, not gonna eat that
Astrobytes: Neither would I eulerscheZahl, though I used to in the past
eulerscheZahl: i know, you are vegetarian now :)
RockyMullet: fish sauce smells disgusting yet, makes food delicious
Astrobytes: :)
RockyMullet: so yeah, eulerscheZahl, makes disgusting code to make your bot delicious
AntiSquid: i don't find fish sauce smell disgusting @_@
AntiSquid: i bet the alternative to fish soy sauce is some kind of soy sauce with flavoring and bunch of chemicals you need a PhD in Chemistry to know what you're really eating
AntiSquid: fish sauce *
Illedan: https://www.codingame.com/share-replay/447586402
Illedan: (╯°□°)╯︵ ┻━┻
blasterpoard: thanks I guess
Nerchio: advanced to gold what :D
AntiSquid: too close for comfort
eulerscheZahl: wlesavo you asked us to remind you: stop submitting soon
wlesavo: stoped a while ago but thx anyway euler, appreciate
Nagatwin: illedan lol
Nagatwin: Draw is better than loose I guess :/
eulerscheZahl: but easy to fix
Nagatwin: you could have missed
blasterpoard: ... I found it very funny that my bot that can't fight at all went from rank 10 to rank 20 just by changing the strategy for first 30 moves
blasterpoard: *from 20 to 10
kovi: but is a stable rank10?
blasterpoard: looks like it
blasterpoard: my winrate depends very little on who am I playing against
AntiSquid: submit 20 times to know for sure
blasterpoard: it's mostly random depending on how badly does it di in fights
kovi: no need to resubmit. we will see an 2 hours
blasterpoard: *it does
blasterpoard: anyway, the point of this submit was just to make sure I'll get to legend
AntiSquid: nice spot to become the gold boss euler
eulerscheZahl: i don't want to be the boss
eulerscheZahl: that just encourages players to exploit the weaknesses of my bot
Nagatwin: Everytime I deviate from my original strategy I loose 10 ranks or so :/
AviLevi: why all programmers using macbook?
AntiSquid: ban
aCat: oh, still no legend bot?
eulerscheZahl: should be in 30min
eulerscheZahl: with an epic name
blasterpoard: are the bosses still catpains instead of captains, or was that fixed long ago?
eulerscheZahl: fixed
Nagatwin: :'(
eulerscheZahl: blame Saiksy
Nagatwin: Catpain was nice
eulerscheZahl: are you a dogs person?
Nagatwin: the fun misspell
Nagatwin: haha
Nagatwin: Im alergic to cats :p
aCat: :>
AntiSquid: they should be catnips instead
blasterpoard: I guess you're free to interpret Ctp. however you want to
aCat: Cpt. ??? :P
tobk: might be a bit late to ask, but is anyone using SONAR to any success? seems like a waste of moves to me
eulerscheZahl: i even have piecharts to answer that question
Nagatwin: :D
eulerscheZahl: some in the top10 use it, some ignore it completely
Nagatwin: Its my next-level kovi counter
Nagatwin: but shuush
eulerscheZahl: kovi uses by far the most silence in the top ranks
eulerscheZahl: friendly reminder: stop submitting if you hope to pass to legend
blasterpoard: tfw legend opens in less than an hour and we still don't have a meta xD
Nagatwin: eulerscheZahl I wanna drag you down so you're the boss :p
Nagatwin: #17 would be perfect
eulerscheZahl: i don't want to be the boss nor being drowned
dbdr: Illedan confirmed as the boss?
eulerscheZahl: #16 there we go
Nagatwin: yes
eulerscheZahl: i have no idea who it will be
eulerscheZahl: but i know the name
dbdr: how many letters?
Nagatwin: Ctp Whale
eulerscheZahl: 7
dbdr: _ _ _ _ _ _ _
eulerscheZahl: dbdr suggested the name
dbdr: yes? :)
dbdr: \o/
tobk: I hope it's not Sparrow... maybe Ramius?
blasterpoard: cpt obvious?
blasterpoard: if I'm right, I should be the boss, because I'm not even trying to hide
Neozero: Hello can someone help me ? I'm stuck at the TAN Network Puzzle.
IjustKilledutoo: :heart_eyes:
Neozero: "5 stops, 2 routes" Don't seems to work.
Neozero: For me
Neozero: Everything else is working fine.
Neozero: :(
EricSMSO: 7 letters ? k....19 ?
EricSMSO: *c....19
Astrobytes: Captain Pugwash
dbdr: :zipper_mouth:
YannT: it's gonna be Captain Sparrow I bet
eulerscheZahl: we have sparrow at CotC already
tobk: Also he does not have a submarine... at least not intentionally.
Astrobytes: Captain Perière
eulerscheZahl: Nagatwin stop submitting
eulerscheZahl: you are pushing me down :/
kovi: siman top
dbdr: Nagatwin you'll miss the promotion too
dbdr: top 4 is random?
kovi: no
dbdr: pb4 was top most of the time recently, no?
kovi: top3 is, i'm weaker - jolienden is better than me
dbdr: now #4
kovi: joliended and pb4
YannT: same kovi, I'm slowly falling at this point
YannT: and I'm kinda out of ideas to keep up now :(
YannT: jolindien siman and pb4 are clearly above the lot now
kovi: yeah, even though im currently near 2nd
kovi: i still have 2 pages of todos
YannT: lucky you, I have like one impactful idea, and maybe 3 minor ones that probably won't do anything
AntiSquid: 2 pages?
kovi: but probably will look into their strat as well
Nagatwin: eulerscheZahl that's true love <3
eulerscheZahl: what?
Nagatwin: dbdr I don't mind missing the promotion
Nagatwin: "Nagatwin stop submitting you are pushing me down :/"
eulerscheZahl: seems that they are opting for a hard boss. i probably have to improve :(
kovi: time?
Nagatwin: how hard ? :o
eulerscheZahl: soon
AntiSquid: how do you know they want a hard boss?
eulerscheZahl: discord
eulerscheZahl: (not the public one)
aCat: nooo :(
kovi: nagatwin done
aCat: I was wishing for a legend just one time I like the game and finally do some serious ccoding
YannT: they were looking at dbdr's code so that's #12 :)
Nagatwin: kovi yeah I pushed a bad version
AntiSquid: oh well contest is hard already, but overall don't mind either way since top 30 is hard anyway
YannT: also dbdr apparently has bad code
eulerscheZahl: how do you know? #fr?
inoryy: haha
AntiSquid: tell him to fix it Yaroslav3991
YannT: yeah euler
AntiSquid: YannT
eulerscheZahl: does dbdr timeout in the IDE?
RoboStac: oh god, imagine a rust boss that no one could test against
eulerscheZahl: i rarely play matches there
dbdr: eulerscheZahl yes :(
kovi: robo, yeah
Zac__likes_fortnite: (╯°□°)╯︵ ┻━┻
eulerscheZahl: no boss for you then
Zac__likes_fortnite: Good Morning
dbdr: I learned recently that's a good thing
Zac__likes_fortnite: Hello
Zac__likes_fortnite: hello
Zac__likes_fortnite: hello
AntiSquid: Zac stop
Zac__likes_fortnite: hello
Zac__likes_fortnite: Good morning
eulerscheZahl: almost noone submitting, that's something rare
YannT: I passed legend suddenly am I alone? :o
eulerscheZahl: the boss!
eulerscheZahl: wlesavo
eulerscheZahl: i saw it coming :(
YannT: aouch
eulerscheZahl: since when does the boss have no rank in the IDE leaderboard?
wlesavo: lol
aCat: Idk, but it doesn't have now
eulerscheZahl: first time i see it
aCat: I was seatching for the boss on leaderboard for a few days ;p
wlesavo: eulerscheZahl this is how last time promoting crashed
AntiSquid: so who is the boss?
eulerscheZahl: no, by setting the boss score manually to that of a player
eulerscheZahl: while said player decided to submit at the same time
eulerscheZahl: so the boss had a score of 0
AntiSquid: nvm
wlesavo: so im the boss? it does print fatality but does not print other stuff, and my seed was random
AntiSquid: yes
wlesavo: i think seed was commented out in submit
eulerscheZahl: they tend to make bots deterministic
aCat: top 10 legend...
YannT: maybe they removed some of your messages to not help people ;)
aCat: thats harsh
wlesavo: they could just uncomment that
AntiSquid: there's a full week
eulerscheZahl: a week of pain and suffering
wlesavo: YannT silver boss was printing
aCat: you assume the function of better bot is always ascending
AntiSquid: so now does submit spam help in legend? :p
YannT: well at this end of this rerun we'll have a clear picture of the rankings at least
YannT: (I'm not gonna come out of this very well)
kovi: 0-9 vs. jolindien
YannT: well that's a horrible rerun
inoryy: 1.5pt between boss and #2, wow
kovi: there was a gap there
Illedan: Damn, gonna be hard
Illedan: :D
Illedan: hmm, 1 point above me. Anyone want to push? :P
inoryy: you mean push the boss up?
blasterpoard: Illedan I'll give it a go
Illedan: nonono
AntiSquid: wow looks like a lot of improvement is required
NormantasStankevicius: I enjoy, how half of the participants are in wood
NormantasStankevicius: well not really enjoy
NormantasStankevicius: more fascinated
NormantasStankevicius: Wood1 right now has 590
YannT: doesn't surprise me, the barrier to entry on this contest is higher than usual
NormantasStankevicius: might be
NormantasStankevicius: Not really experienced with these competitions
AntiSquid: alternative would be a huge bronze/silver league
NormantasStankevicius: Coders of the galaxy IMO were harder
inoryy: and that's after the W1 boss was nerfed twice
aCat: yep - reminds me of cobu - neede some pathfinding, go there, go back
AntiSquid: i passed wood boss before nerf i believe :thinking:
YannT: me too, and I had to write a BFS and basic detection already
YannT: so, not trivial
NormantasStankevicius: BFS?
YannT: breadth first search
AntiSquid: wood 1 was trivial though! just add silence
Valdemar: BruteForseSequentialkill
YannT: I went straight to bronze :D
NormantasStankevicius: Hmmm, I'm coding in C#, is there enought computing power, to think that my opponent is anywhere on the grid?
inoryy: I needed planning, basic torpedo avoidance and enemy detection to get through
AntiSquid: nice brickwall you wrote wlesavo
NormantasStankevicius: aka, take the 15x15grid, and think he might be anywhere, and remove where he could not be
NormantasStankevicius: every turn
Valdemar: NormantasStankevicius depends on algo, there is python3 bot in top10
inoryy: that's what everybody does from bronze and up
YannT: I'm top10 with a JVM language
NormantasStankevicius: Thanks Valdemar, that means it should be plausible
wlesavo: AntiSquid lol
dbdr: eulerscheZahl also waiting for a push?
eulerscheZahl: yes :D
RoboStac: I appear to be giving him one
eulerscheZahl: indeed
dbdr: not sure it will work, but worth waiting a bit
FlamingRobot_e54f: Guys im new here and excited to be here
eulerscheZahl: right now i like robo much more than eric and erik
AntiSquid: FlamingRobot_e54f i got exciting news for you then! there's a contest going on and you can join : https://www.codingame.com/contests/ocean-of-code
EricSMSO: Oups, I am pushing up the Boss
eulerscheZahl: you weren't supposed to do that
FlamingRobot_e54f: thanks @antiSquid
duckquackduck: For ocean of code,c an you MOVE E| SILENCE E 4 - in the same command? What will be the result? Will you got 1 cell or 4 cells east?
RoboStac: 5
RoboStac: and yes, you can
duckquackduck: thanks @RoboStac
eulerscheZahl: the boss already gained more than 1 points since legend opened
rwilson: ;) Wouldn't it be hilarious if someone had their bot set to turn on new strategies as the DATE changed ;) what would happen if that got picked as a boss ;)
icecream17: wait, legend opened?
rwilson: legend is top 10 at the moment
AntiSquid: not enough space to write that much rwilson
eulerscheZahl: they read the boss code before deciding
rwilson: AntiSquid did it toss my message in a pastebin due to smiley's
wlesavo: to bad they didnot uncomment setting the seed
wlesavo: didnt expected to be the boss, otherwise would do it myself for sure
rwilson: even something like if( day = Tuesday) { runSilentSpam } would be 'fun'
tobk: aw, gold boss uses random with random seed... so much for reproducible playouts :-(
wlesavo: tobk sorry for that :no_mouth:
icecream17: nice. i improved to 176th overnight
eulerscheZahl: why do you even want randomness in your bot wlesavo?
eulerscheZahl: deterministic makes it much easier for you to debug your code
tobk: I guess random is useful for some tiebreaks, but I usually use a fixed seed so I can check if a "should no nothing" refactoring actually really did nothing
mlomb: maybe to avoid other to debug losses vs him
mlomb: others*
AntiSquid: rwilson no pastebin showed up for me so don't know
wlesavo: eulerscheZahl have path finding with random, and i just commented it for a couple of subs and has forgotten
AntiSquid: isn't random better in arena?
AntiSquid: random with the currently used seed in the message :D
dbdr: LeChuck is not deterministic?
Valdemar: dbdr yes, blame wlesavo for that
dbdr: no blame
wlesavo: well to be honest fixed seed would not be enough for it to be deterministic
wlesavo: i also have search interruption at fixed time, and that depends on more than just a seed
tobk: that's true
tobk: still plenty of other deterministic bots to debug against, and for a boss, a bit of randomness might even be better?
wlesavo: i guess it matter less for the gold boss than the others
Illedan: Nah, you want to reproduce games
tobk: then the folks selecting the boss should have considered this...
eulerscheZahl: usually CG checks if a boss is deterministic
eulerscheZahl: i guess this time they didn't or accepted it
wlesavo: but yeah would not imagine cg would take undeterministic bot
tobk: maybe they fixed the seed but did not notice the timing thing
wlesavo: no, i spawn in a random point as well
wlesavo: so seed was not fixed
Illedan: Fix seed by map?
Illedan: Easier for yourself too..
tobk: i mean if they inspect the code before, they might also change the code a bit, e.g. by doing a random.seed(0) before anything else
wlesavo: i mean i always use a fixed one, just so happend i commented out it in last couple of subs
tobk: hey, no problem for me, I was just surprised :-)
wlesavo: Illedan actually didnot think of that, a good idea
Illedan: Makes it easier to play against yourself ;)
Illedan: Seed on playerID
Illedan: is enough I guess
tobk: yeah, it means random behaviour, but not the same frst moves in every game
Illedan: But I added islands too, just to have some difference
tobk: I now do seed(hash(grid) + own_id)
wlesavo: > Seed on playerID yeah, that i had
wlesavo: first moves are quite deterministic, you minimize the information given
dbdr: let's see how I do without the few timeouts
dbdr: I think the slow refresh of the lb will be especially annoying now :(
Illedan: lb?
dbdr: leaderboard
Illedan: agreed
Illedan: was more fun to watch earlier :P
dbdr: finish you run, ait 5 minutes to know if you ended above the boss
dbdr: though maybe the ping would work :)
Illedan: ping?
dbdr: promotion sound
dbdr: notification
Nagatwin: clock a replay and refresh it for the updated ts
Nagatwin: click
dbdr: true
Nagatwin: like you vs the boss
Illedan: hmm
Illedan: Means we can automate that..
dbdr: thanks Nagatwin
dbdr: yeah
wlesavo: dbdr couple of resubs should be enough for you, i basicaly didnt change anything for whole week
dbdr: https://i.snipboard.io/Xuyzo3.jpg
Illedan: Wont help if others improved, which he is worse against..
wlesavo: true
dbdr: https://www.codingame.com/replay/447659206
dbdr: above LeChuck right now :)
dbdr: 32.2 to 32.0
dbdr: but just lost one
dbdr: and won one :)
tharun571: im new to codingame , wat are the stuff interesting herer
Nagatwin: Im kinda dragging you down
Nagatwin: sry
eulerscheZahl: you shall not pass!
dbdr: well thanks eulerscheZahl!
eulerscheZahl: tharun571 that's the interesting stuff right now: https://www.codingame.com/contests/ocean-of-code
wlesavo: dbdr do you shoot after silence? that seems costly
dbdr: I think now I use silence to get close and then shoot
dbdr: not saying it's optimal
wlesavo: i see
dbdr: not this time
kovi: even after improvement, i got totally wrecked by joli and pb4
Illedan: Improve something else? :P
wlesavo: joli my only 50% wr, lol
eulerscheZahl: you get a lot of these wins actually kovi https://www.codingame.com/replay/447649138
wlesavo: all the others recking me
pb4: wlesavo : tell me how :/
kovi: euler, must be from previous submit. this time i ended up 0:6 vs joli :)
pb4: I'd like the key against siman also
pb4: the others, looks like I'm fine :D
dbdr: joli is a nice nickname :)
wlesavo: pb4 it looks that our pathfinding is wery simmilar, i guess he is quite better at some other aspects
wlesavo: but i have a whole free weekend to come up with smth, i hope for at least some improvements
kovi: wow
kovi: 30% vs pb, 0% vs joli, but still 1st
kovi: (ofc. re-submits from others)
NormantasStankevicius: Yo, what do you get when you get a timeout?
NormantasStankevicius: cause I'm getting "Unhandled Exception: System.FormatException: Input string was not in a correct format. "
NormantasStankevicius: I'm i'm just curious
NormantasStankevicius: not a timeout, but response time per turn
NormantasStankevicius: when the time is more than required
dbdr: eulerscheZahl nice going against the boss!
dbdr: I just beat him twice :)
dbdr: 3
eulerscheZahl: this submit is going better than i expected
dbdr: https://www.codingame.com/replay/447659206
dbdr: neck and neck, around 30.70
dbdr: you?
eulerscheZahl: 0.75 below the boss
eulerscheZahl: give me a push
dbdr: will do my best
dbdr: or pull him down
dbdr: even better for me ;)
dbdr: winning 3/1
dbdr: 3/2 :(
eulerscheZahl: i got a 7-2 run against the boss
dbdr: 4-2
dbdr: i'm above by +0.2
dbdr: 30.56 for boss
eulerscheZahl: don't leave me alone with him
eulerscheZahl: push me up, then you can go
RoboStac: it's ok, I'm doing my best to pull dbdr back to us
dbdr: thanks RoboStac :D
eulerscheZahl: thank you for your service
RoboStac: :)
Counterbalance: NormantasStankevicius that looks like a C# error in your bot. If it crashes it won't send a command and you should see 'Timeout' in the log and as a tooltip.
dbdr: now even the replay scores don't seem to update
pb4: is there a way to see the boss' score ?
eulerscheZahl: http://cgstats.magusgeek.com/app/ocean-of-code/eulerscheZahl
dbdr: see a replay
eulerscheZahl: yes
dbdr: or cgstats
dbdr: but replay is more up to date
dbdr: https://www.codingame.com/replay/447659206
dbdr: won 5-2!!
eulerscheZahl: actually CGstats gets the boss score by looking at a replay
pb4: You're pretty close to him !
eulerscheZahl: yeah, but dbdr is pushing me down :/
dbdr: https://i.snipboard.io/qZcuER.jpg
dbdr: this might or might not be the latest
dbdr: crazy leaderboard
eulerscheZahl: yay!
kovi: dbdr just resubmit with loosing on eulers inital position
eulerscheZahl: https://prnt.sc/rwxoc8
dbdr: yay!
kovi: nice, gratz to you both
Illedan: :clap:
eulerscheZahl: thank you so much RoboStac and Illedan
dbdr: not confirmed for me
Illedan: Yeah, I won the boss
eulerscheZahl: you two pushed me in the end
Illedan: and lost everyone else
dbdr: robo above
dbdr: it's a mess
dbdr: :D
eulerscheZahl: and thanks dbdr for beating the boss of course
dbdr: you're welcome :)
Boulet: gg eulerscheZahl
eulerscheZahl: now i'm losing a lot
Illedan: lol
eulerscheZahl: legends is mean to me
Illedan: How many in legend now?
eulerscheZahl: 11
YannT: you came up with improvements really quickly eulerscheZahl, congrats
eulerscheZahl: decided to spam more silence
dbdr: https://i.snipboard.io/MDcNiS.jpg
dbdr: why is this incoherent with the lb?
eulerscheZahl: and realized that i mostly use a distance of 4 which wasn't intended
eulerscheZahl: did you F5 on that replay dbdr?
dbdr: sure
eulerscheZahl: weird.
dbdr: Legend
eulerscheZahl: i saw a lower score for you when i checked your replays
eulerscheZahl: whatever, congrats!
dbdr: thanks!
Boulet: gg dbdr
eulerscheZahl: welcome to the bully league
eulerscheZahl: let's get bullied together
dbdr: :D
YannT: congrats dbdr!
Illedan: 0.01 above for me :scream:
dbdr: merci all :)
Astrobytes: lol, Cpt. LeChuck, awesome
eulerscheZahl: nice, you know him :)
Astrobytes: Monkey Island!
eulerscheZahl: look behind you, a 3-headed monkey!
YannT: heyy Nagatwin made it too!
Boulet: and you RoboStac ?
dbdr: https://i.snipboard.io/O3CsBf.jpg
dbdr: good old bug :D
Boulet: nice gg Nagatwin
eulerscheZahl: yeah, classic
dbdr: gogogo Illedan!
dbdr: and robo
RoboStac: nope, I'm stuck in gold
dbdr: really?
Illedan: Thx for all the points robo :D
dbdr: must be close
eulerscheZahl: wait till Illedan is gone, then resubmit
RoboStac: submits finished I'm at 29.71, boss is just above 30
Illedan: yeah, wait please
Illedan: Without me it should be easy
Nerchio: haha legend opened and i am top 200 in gold :p sick
Nerchio: Illedan 1st place in gold
Boulet: go go go Illedan killl him
Illedan: Might even help robo
RoboStac: yeah, just got promoted
Illedan: np
Illedan: I have 4 recent wins :P
Illedan: vs the boss
Boulet: gg RoboStac
Boulet: nice work
dbdr: gg RoboStac!
Boulet: with the boss
eulerscheZahl: so 15 in legend soon
kovi: great, the more players the higher i get
eulerscheZahl: and poor wlesavo losing against all of us who promote
dbdr: nice number, let's close it ;)
dbdr: it's not like we had time to massively optimize against him
eulerscheZahl: true
dbdr: might come though :(
eulerscheZahl: definitely was one of the harder legend leagues for me
dbdr: what, 1 hour? :D
eulerscheZahl: +3 weeks before
dbdr: sure
Boulet: and one week to go
eulerscheZahl: well, wasn't working on my bot the whole time
kovi: welcome robo
kovi: how blaster not here?
wlesavo: eulerscheZahl but im finally not last in legend!
wlesavo: grac btw
Nerchio: so how good is cpt. le chuck
kovi: he said his stable 10th
blasterpoard: kovi I also said that I have about the same winrate against everyone
eulerscheZahl: and Illedan with a massive 1 point lead
Illedan: I have 80% win vs wlesavo :D
Illedan: *boss
wlesavo: Illedan well it is the same for now
blasterpoard: so higher rated people at the top were actually boosting me
wlesavo: but i have to adapt fast
Boulet: Illedan: 10 times resubmit just to let me in the legend :D
Nerchio: lol funny gold bot
Boulet: ok :door:
Nerchio: |TORPEDO 6 3|MSG FATALITY
Illedan: \o/
Illedan: Legend
Illedan: wooo
Illedan: And level 40 :D
ZarthaxX: lol legend lvl
ZarthaxX: gz illo
eulerscheZahl: congrats Illedan, finally orange
wlesavo: grac Illedan :slight_smile:
Istian: So, real life question. (And, holy cow, didn't realize the contest was open)... back to my question. I'm making a request(URL, {json: true})...more code. Some of what I get back has foreign special characters, but those don't get displayed properly. How can I fix this?
Astrobytes: gz Illedan!
eulerscheZahl: let's start with this Istian: what language are you using?
eulerscheZahl: the answer might change depending on your answer
Nagatwin: Owell
Nagatwin: gone eating and i'm legend
Boulet: double gg Illedan
dbdr: gz Nagatwin :)
eulerscheZahl: you missed the most of the congratulations then Nagatwin
Nagatwin: haha
eulerscheZahl: i'll hereby repeat mine
Nagatwin: nah I can see it :)
Istian: eulerscheZahl javascript
eulerscheZahl: then my answer is: i'm out!
eulerscheZahl: for web requests i usually use python
Istian: :(
Istian: I'm super blocked with this problem
Nagatwin: credits goes to eulerscheZahl , I have 70% winrate against him and he crushed boss
Manish0349: I started JAVA i love to ocde so is it better to do that here?
Manish0349: to use this platform
Manish0349: ?
Istian: Why are all contests here based on pathfinding algos?
MadKnight: why not Manish0349 ?
MadKnight: Istian because pathfinding is the base strat
MadKnight: to fight
eulerscheZahl: not all are
MadKnight: it's like walking
eulerscheZahl: where is the pathfinding in locam or code4life?
rwilson: ;) or https://www.codingame.com/multiplayer/bot-programming/legends-of-code-magic
Istian: Ok, maybe not ALL... but most are
chucknorris: code4life was fun
MadKnight: it's built-in in referee
Manish0349: sure I 'll try both
eulerscheZahl: try to come up with an interesting game that does not involve pathfinding Istian not that easy i think
Manish0349: thanks @MadKnight
MadKnight: Manish0349 both what?
eulerscheZahl: walking around to perform actions on different places is a normal game concept
kovi: there is at least on top3 player who dont have pathfinding in ooc
kovi: one
eulerscheZahl: you?
kovi: :)
kovi: gratz zhmyh
Istian: I don't disagree euler, I'm likely complaining because my brain isn't evolved enough to learn the algos.
Manish0349: to learn code from code4lif4e and other one too
Zhmyh: oh thanks
MadKnight: he wasn't telling that to u Manish0349
MadKnight: he was talking to Istian, Manish0349
Manish0349: Can you suggest some site where I learn coding and find more practice challenges as well
kovi: welcome jft63
kovi: you guys suppressed that boss hard
Nagatwin: yeah eulerscheZahl destroyed him
eulerscheZahl: 8-1 vs wlesavo in legend now :innocent:
kovi: yeah, just checked
kovi: and with massive incoming games, i gained #1 :)
eulerscheZahl: welcome back to the top
eulerscheZahl: do you plan to do something about your crashes?
kovi: do i still crash?
eulerscheZahl: 8 times in 167 matches
eulerscheZahl: is that the right time to say "fix it!"?
kovi: could be last step crash instead of die
eulerscheZahl: could be a timeout as well https://www.codingame.com/replay/447675083
eulerscheZahl: but true, this one is a certain death https://www.codingame.com/replay/447674568
eulerscheZahl: still: fix it for easier timeout tracking
eulerscheZahl: so it's 4 timeouts and 4 deaths
kovi: thx
kovi: priv?
pb4: wut ?! already 16 in legend ?
pb4: Who's the anti-wlesavo in the bunch ?
Illedan: I had 80% win vs him
pb4: haha
pb4: welcome in Legend then
Illedan: I liked gold better
Illedan: actually had a chance
Illedan: I am getting wrecked by wala -.-
wlesavo: dam, i realized i turned off anti silence 0 part in the boss, that would be fun little thing to have
icecream17: oh, instead of putting mines closer toward the middle, i should put them where they are next to as much water spaces as possible
kovi: nice submit wlesavo
kovi: you tricked cg with a weaker boss submit
wlesavo: thx, actualy just tweeked some parameters a bit, it did really felt like i broke smth in boss
ThaddeusQ3: Is anyone here familiar with the Defibillators puzzle?
ThaddeusQ3: I think I found a bug in the Answer and I don't know how to report it.
wlesavo: thats quite unlikely
wlesavo: 4.5k people solved it successfully
aCat: maybe try reading forum topic about it
aCat: I'm pretty sure there was sometrhing strange about this one
struct: 51k actually
struct: Maybe its the , ?
wlesavo: oh, i looked on the wrong number
ThaddeusQ3: No i accounted for that
struct: What do you think is the error?
tobk: which one was that? a bit of JSON parsing and then finding the closest one?
ThaddeusQ3: The problem is at one point I get a 'distance to nearest defib" of "0" so that's the one I use in the answer. But the answer it wants has a distance of 66.49887....
ThaddeusQ3: I used debug messages to print out the distance calculated of the answer I reported and the answer it wanted as I moved through the code.
struct: Can you paste the code here?
ThaddeusQ3: if that doesn't bother anyone
ThaddeusQ3: http://chat.codingame.com/pastebin/4f7d338d-0488-4e02-8b74-fcb0cf4d7eed
darkhorse64: ThaddeusQ3: Review your code. Here lies the problem
ThaddeusQ3: oh I didn't know it did that
ThaddeusQ3: I am pretty sure I am screwing something up. But I cannot fathom what it could be given what the debug messages say
struct: if Answerd = 0 Or d < Answerd
struct: So
wlesavo: welcom blasterpoard
struct: The error is there
struct: Imagine that one of the distance is 0
struct: answerD == 0
Astrobytes: Hover over my avatar to diagnose the issue...
struct: If you get higher distance
struct: that is true
struct: so it replaces it by higher distnace
wlesavo: Astrobytes what a polite way to put it
ThaddeusQ3: That's how I would put it
struct: You understand ThaddeusQ3?
blasterpoard: wlesavo thx
ThaddeusQ3: Thank you guys for looking at it.
struct: if Answer = "" Or d < Answerd
struct: Will work
ThaddeusQ3: gah! I didn't want the answer!
struct: ups
struct: lol
Astrobytes: wlesavo ;)
struct: sorry :(
ThaddeusQ3: I was just thinking that as you were typing it in I'm sure
tobk: Astrobytes Shouldn't one of the C be a K?
Astrobytes: tobk depends if you go for 'computer' or 'keyboard', both valid
ThaddeusQ3: and yes I know what PEBCAK is lol
Astrobytes: ;)
tobk: right, I only thought of the latter
tobk: still confused why only ~1/3 of "registered" are in the leaderboard...
ThaddeusQ3: There now it works. Though apparently you cannot initialize a double as "" so I used -1
Astrobytes: Registered but didn't submit tobk
tobk: sure, but why?
struct: no ThaddeusQ3
struct: You could use the Answer
struct: and not the distance
Astrobytes: No idea, not what I would do :shrug:
struct: Answer == "" at start
kovi: gj blasterpoard
darkhorse64: Wood2 bot is too strong
Astrobytes: They nerfed it already though?
ThaddeusQ3: Oh well, is submitted. So I'm up to level 6 now. Thanks again
darkhorse64: Yeah, but it still does tracking
tobk: could understand if the contest is anounced months in advance and then only last a few days, many might have other obligations, but announced the same day it started and lasting a month, I'd expect more to at least submit once
Astrobytes: I guess they have harder bosses as you have 4 weeks to work on it
etzl: can someone help me understand how to override GetHashCode in C# please? I've read the documentation and I'm now think it is somehow arbitrary is that correct? any help is appreciated
tobk: You mean how technically to override the default, or how a good hashcode should look like?
Astrobytes: tobk lots of people just give up too quickly anyway, same with every contest
etzl: how logically should override it
etzl: I saw some code that just make a random number
etzl: and some just perform bitwise operation on some numbers
tobk: random is probably not good. you want different instances that are "equal" to have the same hash
etzl: sorry for my English by the way if its incorrect
etzl: so should i only care about that?
etzl: and write m own logic?
tobk: also, the hash of an object should always remain the same
tobk: StackOverflow has some excellent answers on that
etzl: thanks for your help :)
YannT: if you overwrite the equals mezthod of an object, you should also override the hashcode
YannT: (minus typos)
JasonTruter: Whats the aim of this game?
struct: Which game?
YannT: ah C#, not Java, possibly disregard then :p
struct: To destroy enemy submarine
JasonTruter: is it running in real time?
struct: yes
JasonTruter: Is my opponent another player? Or just the computer
YannT: it's a partial information turn-based game where you have to figure out where the ennemy is and shoot them
YannT: another player
YannT: well their code
JasonTruter: How would I figure it out if I can't see where they are?
struct: You get their actions
JasonTruter: Where's their actions
YannT: well, given the islands and map borders, turn after turn you can eliminate locations where they could be
YannT: also after wood you get sonar
struct: Line 3: opponentOrders, a summary of the actions (separated by |) that your opponent has made during its turn.
JasonTruter: So I'll work within the game loop?
YannT: yes
YannT: you write code in a game loop that takes some input every turn and outputs the orders you wanna make
YannT: in this particular game there's also a part pre game loop (choosing your start position)
JasonTruter: Interesting, so the first printing is the start position
JasonTruter: then in the game loop is where the decisions happen
YannT: in the stub it's hardcoded to 7,7 but you wanna make a pick based on the map
YannT: exactly
YannT: first you read game inputs for the turn
YannT: then process and output your turn orders
JasonTruter: The opponent's start position is always random?
aCat: he chooses it
YannT: in the IDE you pick against who you wanna play (for wood, playing the boss is fine, that's a 'computer'), but when you submit your code, you'll be matched against other players, and if you rank better than the boss you advance to the next league
aCat: your first move is to choose your starting position
YannT: wood2, wood1, then bronze, each step you'll get more powers to use
Astrobytes: And the opponent does the same
JasonTruter: So I have to basically start at my inital positon, then in the game loop for every iteration, I would try and take out the opponents submarine?
YannT: exactly
JasonTruter: How would I know if im close to my opponent? Or check his position? because I don't really know where it is, only the orders right?
YannT: you can start by writing just the move orders so as not to crash, and torpedo randomly maybe
wlesavo: you can look some replays to get the process
JasonTruter: Sounds like a plan YannT
YannT: first, write a move that moves around
JasonTruter: I really like this community, you guys are very helpful!
YannT: then you'll do torpedoes
JasonTruter: The only reason I didn't play much codingame is because thought it might get difficult and I wouldn't understand
JasonTruter: This could help improve my thinking
wlesavo: welcome EricSMSO :slight_smile:
Astrobytes: It will be difficult and you won't understand, but if you ask the right questions everyone will help as much as they can
aCat: for the first league it is enough if you make llong paths without chrushing, and do surface when no route available
aCat: no need of torpedo at all ;p
JasonTruter: ok let me start with that
Astrobytes: *crashing acat, crashing!
aCat: :+1:
Astrobytes: ;)
aCat: oh cmon ;p
Astrobytes: :D
Astrobytes: I can hear you saying it lol
YannT: 1) read the map initial input and pick a starting position that's not an island, 2) in the game loop, write a bot that just moves around
YannT: once you've got that, you'll understand the game :)
YannT: :thumbsup:
YannT: don't hesitate to ask if you've got questions
YannT: someone will always answer ;)
Astrobytes: yep. Don't just give up, plenty help around if you ask
Nerchio: can you fall down grom league/
Nerchio: from
YannT: no
Astrobytes: No, you'll stay in the same one you're in
YannT: you can be shamed by your peers tho
Astrobytes: :D
JasonTruter: So what I'm thinking of doing is creating a Point class and for islands, creating an array of points
JasonTruter: To check if I'm moving into an island
aCat: better to care about the water
aCat: easier to manage only water points - and ignore islands and out of bounds
blasterpoard: bitset<225> ?
blasterpoard: you don't want to loop over anything when checking if your next move ends up on an island
YannT: everything in my bot is arrays if that helps
YannT: I didn't do a "grid" thing
YannT: I have an array of islands, and arrays of positions, paths, etc
YannT: int[15] is what I'm working with for paths for instance (one int per row)
YannT: positions being like x + y * 16
Nerchio: i have 2d arrays [][] but i am not in legend ;)
YannT: it's good, that's a grid thing :)
YannT: 15 ints is enough for the whole map tho
Nerchio: I guess more experienced people use 1d arrays for performance
YannT: yes, and then next level after that is bitsets
struct: some even use 4 64 ints
YannT: yes, or 'long' when using civilized talk :p
Nerchio: that's a pain to handle in code isn't it
Astrobytes: not if you know what you're doing with it
YannT: you write your helper functions, then it's transparent mostly
Nerchio: performance in exchange for pain
YannT: I'm have an x(int) and y(int) and a toInt(x, y)
blasterpoard: performance in exchange for writing another class to be able to handle it and then forget about it
YannT: contains(int[])
YannT: etc
Nerchio: I have to say I started the obvious way with grid but i can see its downsides no
Nerchio: w
YannT: instead of beeing like position.x where position is some Pair object, you just do x(position) where position is an int
YannT: so it's transparent
Nerchio: easy to timeout
YannT: a 2d array is alright, the real killer is lists, sets, etc
YannT: if you're down to trying to get rid of your 2d array for performance, I'd say you're good
Nerchio: not an expert about performance quite yet
Nerchio: I have a list as well
Nerchio: of enemy movement :D
YannT: I mean yes, 1d array is better for perf than a 2d array, but that's not going to be your bottleneck if we're being honest, unless you're trying to win microseconds on UTTT
YannT: lists and other collections, now that can easily be an issue on 50ms
Nerchio: yea i will not rewrite it now but maybe for next competition i will choose a different way
Nerchio: something to learn
YannT: look into bitsets
struct: is 1d better than 2d?
struct: Arent they the same
YannT: one is two array lookups, the other is one
blasterpoard: depends on language
YannT: but again, that's unlikely to be your performance issue unless you're doing some crazy stuiff
YannT: (like trying to get your JVM bot to legend on UTTT)
struct: I think in c++ it doesnt matter
blasterpoard: in C++ it should be the same afaik
Astrobytes: C++ the compiler flattens to 1d
YannT: bitsets are the ultimate performance thing (using an int instead of an array)
Astrobytes: Should do in C# .NET to but euler says the mono version doesn't, so better to do it manually
Astrobytes: *too
Astrobytes: Anyway, I've fked up my bot enough for tonight, see you all tomorrow :P
struct: cya
Nerchio: bye
Nerchio: but you're right in ooc the way you store the map is not the most important
Nerchio: other things are more performance hindering
YannT: yes, that's been my point since the beginning of the contest
YannT: performance in this game is not as important
YannT: heuristics can make it to legend
YannT: unlike a lot of other contests where if you're not coding in C++ you start at a disadvantage
YannT: (doesn't mean you don't have to optimize, but it's not the primary focus)
Edrevan: Ever since they hit nerfed the time to answer, perf isn't that big an issue anymore
YannT: they didn't?
YannT: it's always been 50ms per turn
Edrevan: yes they did, after coders stricke back
YannT: it's game dependant
YannT: varies between 50 and 100ms usually
Edrevan: and before coders stricke back every game had more.
Edrevan: And every contest has people in top 20 legend coding in python or funky stuff like that
struct: Its based on game yeah
YannT: you mean before CSB there was <50ms time limits per turn?
YannT: that's harsh
Edrevan: no, on average more
struct: There isnt any <50
struct: CSB was 150ms before
YannT: so, this game being 50ms would be more restrictive then
YannT: making my point
Edrevan: yep
YannT: I've been top5 with a JVM language :p
Nerchio: top20 is 90% c++ :D
YannT: gold boss y'all can't beat is python :p
YannT: which is like one order of magnitude worse than JVM languages (which are one order of magnitude worse than C-like compiled languages)
Nerchio: python is worse than java?
struct: performance wise ye
Nerchio: didn't know
YannT: yes
YannT: it's interpreted
Nerchio: doesn't make me feel so bad about writing in java then :p
YannT: Java has hotspot and other stuff like that, so it's intermediately better
aCat: BTW so the top players are using normal search here? like my moves, his responses, etc?
YannT: on CG what screws you with JVM is the GC
aCat: Or very tricki rule-based stuff?
YannT: aCat: mostly no I think, it very rules based
YannT: haven't heard of minimax or stuff like that
aCat: ouch
YannT: there's some depth in pathing and other things tho
aCat: yeah, I mean killermoves etc
YannT: yeah
aCat: damn, hate rulebaesed - it gets complicated
YannT: everybody's got a sim and an eval and some description of look-ahead for things, but I don't think anyone's got a proper algo like minimax or whatever
struct: What is rulebased?
YannT: I actually tried minimax, it didn't work out, at all
YannT: git reset
aCat: MM probably not, but full your turn search and some eval?
YannT: basically yes
YannT: and opponent ply is some probabilistic stuff
Cappefra: ugh I lost against someone for a bug in my code and I can't reproduce it cause they randomize their starting position
aCat: ehh, and then goes to parameter tuning
YannT: not so much, given the variance in this game parameter tuning is very big strokes :p
aCat: I suppose I won't finish with full my-turn search although I initially planned that
aCat: we'll se
YannT: full your turn search is enough for legend if well evaluated
aCat: but evaluation will be probably an issue
YannT: + some notion of taking into account the opponent's turn (without necessarily siming him)
aCat: there are too many things to ttake into account
YannT: yes, I have a logarithm in there
aCat: opponent's mines and yeah - his possible counters
YannT: altho this entire contest is very reminiscent of locam which I think you're familiar with ;)
wlesavo: i have tanh
wlesavo: not that useful though
YannT: your turn, then don't sim opponent because mostly you don't know what he's gonna do
YannT: that's where we're at anyway
Nerchio: hello
JasonTruter: So I'm considering using a map for waterPoints
YannT: Cappefra: yeah not deterministic bots are annoying ton debug against :)
YannT: use error output so you'll always have debug info in your replays ;)
JasonTruter: which is constant time, I'll use this just for validation
aCat: JasonTruter I was using that for my python code to go silver
JasonTruter: sweet, yeah I'm writing in python rn
aCat: nice approach, easy to manage
JasonTruter: was first in java and thought it was overkill
JasonTruter: because had to create classes for everything
aCat: for the first try yes
aCat: you can switch languages to something more managable than python later
aCat: yep
YannT: gold boss is written in python3
aCat: by the pro
YannT: (meaning wlesavo wrote a very competetitive bot in python)
aCat: doesn't count ;p
YannT: it counts, can be done :p
aCat: I know, it was not against the language
aCat: rather my code management
aCat: in python it's too easy to yeah
aCat: and I don't have scripts to merge multiple python project files ;p
YannT: I like kotlin for that
aCat: need to leran it some day
aCat: *learn
YannT: mutiple classes in a single file? meh, no problem
YannT: it's a very nice language
YannT: aCat: https://play.kotlinlang.org/koans/overview
YannT: they have a very good thingy for learning the language
YannT: with an online IDE and stuff
JasonTruter: Does this seem weird if I create a waterPointsMap, store the key as the coords and value as true?
aCat: yes
aCat: use sets
JasonTruter: but I have to loop through in a set
JasonTruter: with a map, I just access using a key
YannT: it *is* an optimisation over sets, because constant time, but also it would be premature optimisation :)
YannT: so you're reasonaning is right, but I'd say go simple to start
YannT: your*
JasonTruter: I would have thought it would be easier to just check that map if its a valid move
JasonTruter: so its a single line of code
YannT: .contains() is also a python thing no? ;)
aCat: x in y ;p
JasonTruter: aCat wanting me to write more imperitive code :P
YannT: your thinking is right tho, with a hasmap it would be constant time as opposed to linear time with a collection, so that is an optimization
YannT: one that really doesn't matter at the point you're at tho ;)
JasonTruter: I guess you're right when thinking in the purest form
YannT: always go simple/naive at first
YannT: rework when something becomes a problem, not before :)
YannT: otherwise you get lost in details
YannT: there'll be like [0;15] islands anyway, so the difference is negligible
Cappefra: how does the sonar answer come back to me? is it like Parse(inputs[8]);?
Cappefra: I might have written over it the first time I unlocked it
YannT: aCat: someone has questions about a puzzle of yours on #fr
YannT: A*
YannT: I sent him to you :p
VYCanisMajoris: I PM him
Cappefra: Oh I found my bug btw, I was setting my position to visited after a surface by passing it the position object instead of a copy of it, so if I moved on the same turn after surfacing, the surface spot wasn't being marked as visited
Nerchio: woops
YannT: VYCanisMajoris: nice :)
VYCanisMajoris: He did'nt answer for now
YannT: we were talking 10mn ago so I hope he's still around
VYCanisMajoris: ok cool
Nerchio: i am going to refactor a little bit to see if i can tackle cpt. lechuck tomorrow
Nerchio: so far probably 1% winrate
Cappefra: I still get my butt kicked by haddock and I don't really know what I'm doing wrong
Cappefra: it might be time to implement the sonar haha
Nerchio: I had to iron out my bugs to beat silver
Nerchio: i had occassional timeouts
Nerchio: my bot still went into islands for some reason in some games
YannT: Cappefra: haddoick is silver boss right?
YannT: use mines
Cappefra: it is
YannT: he doesn't avoid them
YannT: good pathing + mines is basically enough normally
YannT: he'll walk right into them
Cappefra: debugging hard is what I've been doing today. At a point I was mostly beating the bot so I felt confident but I didn't get past silver rank 70
Cappefra: thanks for the tip Yann!
YannT: the trick to silver is essentially, do mines
YannT: and don't get shot
YannT: anhd you should be good
Nerchio: yea mines are op in silver for sure
Nerchio: but i didn't use mines
Cappefra: @YannT that second one is tricky
Nerchio: and i lost most of my games to mine players
Nerchio: i dont track mines at all yet
Nerchio: will add mines to beat mr chuck
YannT: Cappefra: you do ennemy detection right? use the same process for self detection and silence when you're about discovered ;)
Cappefra: I do! I'm trying to find the right balance between powering up/using silence and mines
YannT: you should always use a move every turn
Cappefra: I also do that
YannT: silence is trickier but for silver, basically silver when opponent knows where you are
YannT: and spam mines :)
blasterpoard: (unless you're at 1hp and have no place to go; then you should spam triggers)
blasterpoard: not that it ever matters
YannT: that's extremely situational and you should not bother with that :p
YannT: just move every turn and spam mines, silence when opponent has you detected, and have good torpedo etiquette, you'll be good
Nerchio: when i started writing i did everything in 1 class in java because this small window was intimidating
Cappefra: it's all about finding that sweet spot
Nerchio: around bronze i moved to an IDE and i ctrl+c ctrl+v now
Cappefra: yeah I did the same
JasonTruter: what do you think is a good way to identify a point as a single value? 'x y'?
JasonTruter: since i'll use this identifier for everything in the code
Nerchio: xy is probably fine if you want to use it as a key like you said before
Cappefra: I think my problem could be in my movement now.. I focused on navigating through the map as long as possible before having to surface, avoiding deadlocks and all that, but moving too much in one direction probably gives me away really soon
Cappefra: ugh I put a lot of effort into that
JasonTruter: So do I use the sonar to check if my opponent is close to me?
JasonTruter: It's probably best to first think of how I will manuver the map to actually find my opponent else I'll be searching forever
YannT: Cappefra: now you're getting the game :)
YannT: longuest path is a thing, but not the only one ;)
JasonTruter: Wouldn't it be best to think about how you indend on finding the submarine first?
JasonTruter: before you even touch code
YannT: you could run self-detection on yourself (same algo you have for opponent) and use that ;)
YannT: JasonTruter: you're in different leagues, you should do moving :D
Nerchio: until mid bronze my bot was running around the map moving and shooting randomly
Nerchio: had 0 tracking
Nerchio: actually it kind of still is moving and shooting randomly
YannT: Cappefra is doing silver, at that point self detection and acting on it becomes a thing :p
Nerchio: just a little bit better
YannT: for wood > silver, just moving is the focus
Nerchio: yea i said it to Jason
Nerchio: silver was kind of random for me because everyone was good at different thing
Nerchio: one guy tracking and shooting, other guy mines, other silence etc.
YannT: ahah yeah :)
Nerchio: and countering everything was tough
Nerchio: i feel like i got to gold kind of undeserved since i didn't change much of my code
YannT: there's a guy before gold opened who got top10 with just moving+torpedo too
YannT: I wouldn't necessarily recommand that :p
Nerchio: impressive
Nerchio: but at some point if you do good decisions based on enemy location movement and shooting can take you pretty far
Nerchio: i am in gold and my bot still moves in enemy's range like nothing can happen
blasterpoard: I am in legend and the only fighting my bot does is "shoot torpedo if it does at least 0.75 dmg on average"
Nerchio: mines I guess? they are the strongest in this game i think
blasterpoard: mine spam and movement
YannT: hey gg blasterpoard
YannT: didn't see you come in :)
blasterpoard: thx YannT... might be my last submit until the last day though
Illedan: hiding? :(
blasterpoard: might be necessary
YannT: I don't see why unless you have a nouvel strategy
Nerchio: so guys use the local version of the game?
blasterpoard: YannT well, just some small stuff that people do and it gives away their position
blasterpoard: I'll PM you one thing I noticed, keep it to yourself and you can check how good it is
YannT: alright :)
Nerchio: i am getting crushed in gold haha
pb4: blasterpoard : you know I can keep secrets too :zipper_mouth:
blasterpoard: at some point it's no longer a secret
blasterpoard: I was just making a point that there's stuff worth hiding
pb4: As in any contest, optimal strategy involves hiding
blasterpoard: at this point, I can prove it just by saying that YannT doesn't say anything about it xD
pb4: haha :D
pb4: I've decided not to hide though, no more fun if everybody does it
pb4: Curious to know what you noticed though :) do tell us after the contest end !
blasterpoard: I'm not sure how much I'll hide for the last submit yet
YannT: I'll just say this: that's a good observation :)
Illedan: hmm
Abius: oof I finally submitted my code
Abius: seems like its winning all fights :D
Nerchio: gj
Abius: 1000 lines of agony that was
Nerchio: i am also at 1000 lines
Abius: what rank are you
Nerchio: gold
Abius: nice. I'm 1st at bronze when will I promote to silver then gold?
Nerchio: if you are first then less than few minutes
Nerchio: to silver
Nerchio: i am going to bed cya guys tomorrow
Abius: cu
JasonTruter: I see with movement its much better to work with a custom data type
JasonTruter: as working directly with x and y gets confusing
JasonTruter: and manging decisions of multiple moves
Abius: what language?
JasonTruter: example a Move class
Abius: I'm using x and ywithout problem throughout the code
JasonTruter: I feel that as you use decisions you would need to use your current coordinates to increase and decrease by 1
JasonTruter: to choose the direction
Nicky1812: guys?
Abius: yes?
Nicky1812: how to input a list in python?
Abius: you don't. you just get a string and then split
Nicky1812: example pls
AbiusX: list=input().split(" ");
Abius: How does Haddock find you? Is he cheating?
Nicky1812: ?
Nicky1812: and wait, how to convert a number to char in ascii table?
Nicky1812: ok i've got it
Abius: it's usually the ord function
Nicky1812: yep ord and chr right?
Abius: ord and chr
Abius: yea
Nicky1812: ok
Nicky1812: thx
elsinnombre2d2: is it possible to take a bot from the leaderboard?
rwilson: elsinnombre2d2 ? take a bot , meaning what? to fight against it?
elsinnombre2d2: yup
rwilson: elsinnombre2d2 anyone in your league or lower yes... bottom seciton with player/options ... 'DELETE' the boss & find someone else
elsinnombre2d2: im refactoring and i need a bot that doesnt destroy me in 50 steps xD
elsinnombre2d2: thanks!!