Chat:World/2020-04-14
thibpat: Hello :wave: I'm streaming Ocean of Code, we've reached the gold league yesterday, time to prepare for the next one! https://twitch.tv/thibpat
aCat: hi, congratz on gold - have fun ;-)
wlesavo: 2nd PHP in legend, huh
ssda: is this a good strategy? when someone dmg you by 1 you dmg your self by 1
ssda: if they did not such thing expect such thing there bot will lose for sure
metahom: ssda, may be for silver
metahom: not for gold league
ssda: oh I see
ssda: I am in still in silver :stuck_out_tongue_closed_eyes:
metahom: why spend time on features you won't need in future? there are many usefful things you can improve
ssda: I'm fixing my bot
ssda: found a bug when the enemy bot shot him self
ssda: my bot gone crazy
metahom: yea, thats a common case
Cappefra: I'm going crazy with my movement
Cappefra: I want to use the 1000 ms at the beginning to explore the grid and decide a path but I don't really know how
YannT: my eval is being a tough negociator, won't listen to reason :p
fluxtransistor: I guess that with optimised enough code and a low level language you can really analyse the possible moves
Uljahn: thibpat: isn't it too much for a stream during the ongoing contest?
struct: What rank is he atm?
wlesavo: фкщгтв 100
wlesavo: around 100
wlesavo: with quite primitive movement strategy actualy
YannT: oh, siman is pushing a bit...
YannT: W:19 / L:62 -_-
fluxtransistor: What is the beat algorithm for finding the minimum distance between two cells (avoiding islands)?
fluxtransistor: *best
kovi: i like simans current version better
YannT: I don't like any siman versions they all kick my ass
struct: you can use bfs fluxtransistor
E_pur_si_muove: Hello, in Silver league the test bot issues the following command: "SILENCE N 0 | MOVE W SILENCE | | MSG 0 7 or 39", but the game according to the engine "Not enough charges of SILENCE"
E_pur_si_muove: why is it not a bug? why there's no exception raised due to this invalid command?
Illedan: Got a replay?
E_pur_si_muove: this happens for me in every test game
Illedan: Share a link then?
E_pur_si_muove: Just checked the game engine source and it's not an exception case, just a simple message.
E_pur_si_muove: I think it's not nice. :(
Illedan: Yeah, you have to handle it in your own bot to update your states
Illedan: But the opponent is not getting the silence
Illedan: only valid commands.
E_pur_si_muove: you're right. just saw the Game summary, and not checked the inputs. sorry! :(
RavenKZP: Guys...:https://www.codingame.com/replay/449445297
RavenKZP: 30 -> i use SILENCE but my bot do SURFACE...
RavenKZP: it is normal?
Nerchio: find a bug in your code ;P
RavenKZP: i know the bug
RavenKZP: it is i want to use silence when it isn't charged
E_pur_si_muove: but there's no more command issues => no command = surface
RavenKZP: ok so it's normal
RavenKZP: anyway my mind was blown for it :D
kovi: nice submit btw illedan
bamilan: sry accidental message
Illedan: Thx, got pushed a lot
aaronshenhao: Anyone know the equivalent of itertools.groupby() which groups all similar elements, not just adjacent ones?
tobk: aaronshenhao Use a dict (manually), or just sort by the same key function first
aaronshenhao: I see, thanks. I guess that would be simple too. Mathematica has a groupBy function too, except it groups all similar elements, not just adjacent ones.
RMuskovets: anyone want to play with my bot?
TheNoLifeKing: i struggled with 1D spreadsheet for far too long because of an issue i didn't fix when i copy pasted code that i was using twice. Made a loop, replaced the variable, fixed the issue. Was mad, now im relieved.
TheNoLifeKing: RMuskovets, im interested lol
TheNoLifeKing: where am i going to do so? what does it do?
RMuskovets: "Players" in the IDE
RMuskovets: TheNoLifeKing but unfortunately looks like we cant play together
TheNoLifeKing: im trying and failing to figure this out lol
tobk: you can't play against arbitrary bots, only your same league and some below
RMuskovets: and my own bot too :)
tobk: yes, your own bot us usually in the same league as your own bot
Nerchio: lel
TheNoLifeKing: i have no idea how to even get to "players in the IDE". im not to familiar with anything but practice and clashes
RMuskovets: oh, I was talking about ocean of code
fluxtransistor: It's the 'Ocean of Code' challenge
TheNoLifeKing: i dont know if ill be able to test your bot, sorry. what languages do you code in?
fluxtransistor: You have to have a competing bot to do that
TheNoLifeKing: ah, i see. guess i can go try it out
fluxtransistor: It is a contest where you devise your algorithm to win a 'battle' with another bot
fluxtransistor: You cannot see the others' code
Nerchio: 100k characters is the limit?
TheNoLifeKing: immediately backing out of that
TheNoLifeKing: still an open question tho: what languages do you guys code in? i spent entirely too long trying to fix my 1D spreadsheet code and i was hoping someone would review my code.
DanTheMan832: Does silence add to your visited squares?
E_pur_si_muove: yes. like a move, but silently
DanTheMan832: All of the squares you pass?
E_pur_si_muove: yes
TheNoLifeKing: has anyone completed 1D Spreadsheet in c# and is willing to review my code? i put way more time into it than i should have and would greatly appreciate it
RMuskovets: What is "torpedo cooldown"?
fluxtransistor: It is the number of recharges required before being able to torpedo.
dbdr: TheNoLifeKing if you have solved it you can view other people's solutions
MiguelGomezDiaz: anybody has done Enigma machine game?
WINWINWIN: Can anyone reccomend a good link to learn about BFS and DFS?
fluxtransistor: Python?
fluxtransistor: Look here for bfs: https://pythoninwonderland.wordpress.com/2017/03/18/how-to-implement-breadth-first-search-in-python/
Astrobytes: https://www.redblobgames.com/
Cappefra: lechuck is pretty hardcore
wlesavo: pretty hardcode
Cappefra: ba dum tsch! :D
idkhow2codee: I have just played clash of code and got insane problem where I was supposed to calculate area of polygon given number of vertices and their coordinates wtf
fluxtransistor: which mode?
idkhow2codee: fast
fluxtransistor: ouch
idkhow2codee: xd
idkhow2codee: nobody did
Cappefra: fast mode is bad for that one haha
Cappefra: not that 15 minutes can't be enough, but the pressure...!
Q12: if i create Reverse mode in CLASH OF CODE do I need to put something in the Statement?
fluxtransistor: I don't think so
aaronshenhao: Why does list(map(set, 2dGrid)) not working in my Python console (unhashable type)? I did it in a clash and it works.
aaronshenhao: Not only worked, but had a super strange bug, which is why I'm trying it after.
RMuskovets: So, it should create a set from each 2dGrid. The error probably says that in 2dGrid you have an unhashable type
aaronshenhao: Yes, it does, and I don't know what that means. I expect [set1, set2, set3] in the final result, which worked in a clash.
RMuskovets: Sets work only with hashable types
aaronshenhao: Could you elaborate what that means? In the clash I got something like [{'-', '.'}, {'-'}, {'.'}, {'.', '-'}]
aaronshenhao: But in my console I get that error when I copy pasted the code
aaronshenhao: And the weird bug I was getting was that when I did list(map(...)) twice, the list would become empty.
tobk: what is 2dGrid? a list of lists of hashable things?
RMuskovets: if it is a list of lists then it's items are lists and they're not hashable
tobk: RMuskovets a list of lists would be fine, as the `set` operation is applied to each element, i.e. turing the inner lists to sets. it's the type of elements inside the inner lists that might be the problem
aaronshenhao: 2D grid was something like [["-", "."], ["-","-"]]. Was an N*N grid.
aaronshenhao: Ok found the issue, there is an extraneous set of []. Now to the bug
aaronshenhao: For a = list(map(set, 2dgrid)), if I do list(a) it is fine. but if I do list(a) again it outputs an empty list.
aaronshenhao: By extraneous set of brackets I meant it was doing list(set, [2dlist]) instead.
tobk: then `a` is the result if `map(...)`, not of `list(map(...))`
aaronshenhao: Yes, you are right. I did a typo. I didn't know list() modifies the map?
aaronshenhao: Thought it just took the map, and outputted a list without doing anything to the map
tobk: it does not modify it, but exhaust it. in Python 3, map is an iterator, i.e. it processes the elements as needed and then discards them
aaronshenhao: Ah I see, that makes sense now. Thank you very much!
AntiSquid: getting timeouts from my own silences :D
AntiSquid: when i try to track them i mean
Radewoosh: @errichto Gimmie link
AntiSquid: oh he's doing clash :o
dbdr: AntiSquid self spamming? :D
struct: who is doing clashes?
struct: errich to?
AntiSquid: https://www.youtube.com/watch?v=rEGDNd-9PAU was doing struct
struct: ah ok
AntiSquid: dbdr 93894 paths and then i try to compute the silence :D
struct: thanks
AntiSquid: it's on a map without many islands
dbdr: true, that changes the possibilities quite a lot
Nerchio: how do you guys handle mines since 1 mine action = 4 mines?
struct: he is getting quite big
nicknobody: how do you do interval in python
AntiSquid: https://www.google.com/search?q=interval+python
nicknobody: thank you so much!!
AntiSquid: https://www.geeksforgeeks.org/python-interval-initialization-in-list/
Q12: https://www.codingame.com/contribute/view/4966e0dcef0ece6126f2a788ec879019633d
Q12: Please help me to approved the game
eulerscheZahl: what makes your contribution so special that you think it needs approval?
nicknobody: we will help you
nicknobody: what do you need
Nagatwin: Q12 Test2 is wrong I guess :)
eulerscheZahl: sum of all numbers up to 20: 210 sum of all primes up to 20: 328
Nagatwin: haha
eulerscheZahl: there is a C# solution provided, but it doesn't even compile
eulerscheZahl: i thought CG checks for that?
Q12: eulerscheZahl I hope you meant well, and actually tried to help. I think it adds to Clash of code and makes it more fun to play. I don't know if it special or not but it is my first try, I can only get better from this point
struct: They used to check IIRC
Q12: nicknobody Thank you! I need three approvals so my program will get to be used
eulerscheZahl: these clash of code puzzles just look interchangeable to me. that's nothing bad for clashes, the more the better. just not my cup of tea
eulerscheZahl: e.g. we have 53 community contributions with a "prime" somewhere in the statement or comments
struct: How many contributions in total?
eulerscheZahl: 974 in my DB
eulerscheZahl: which is a little outdated i think
eulerscheZahl: and i plead guilty of contributing to the 53 with CGFunge Prime
eulerscheZahl: the contest ranking feels so random was 2nd from the bottom when i checked this morning
eulerscheZahl: now i'm in the middle
AntiSquid: legend is less random than gold
eulerscheZahl: i'm happy that i don't have to deal with gold anymore
AntiSquid: + random boss :D
eulerscheZahl: well known
eulerscheZahl: blame sailsy or wlesavo
AntiSquid: was just underlining how fun it is
wlesavo: well it fits :slight_smile:
eulerscheZahl: a gold boss isn't supposed to be fun
struct: I think the current boss fits well
struct: 32 legend atm
wlesavo: i meant random fits random, but yeah, really sorry that happened
Nerchio: i have 2000 lines in gold xd
eulerscheZahl: 1356 here
Nerchio: it's random because there is a point in the game where you don't know if you are walking on a minefield or not
eulerscheZahl: i think my personal highscore is 1583 lines for mean max
tobk: just wondering: why does there has to be a boss at all? I mean, in the end you have to win most games to even be eligible to play against the boss, and even then you can lose all the boss games and still be promoted.
struct: So short
DanTheMan832: Any1 got any tips to avoid trapping myself in a corer and having to surface?
tobk: in the end, you get promoted if your score is higher than some threshold, which ATM is the score of the boss, but why not just use some fixed threshold?
eulerscheZahl: to get a stable reference tobk
struct: My longest are CSB and FB, both unfinished
struct: with 2k+ each
eulerscheZahl: keep an eye on the score of top players while league size increases
eulerscheZahl: the more players, the higher the top score. so setting a fixed score (say 30) for promotion will not keep the difficulty as constant as a boss
tobk: hm, I guess if there were no boss, the current top player would win all the games (assuming perfect "a beats b" ordering), then would be promoted, then the second-best would win all games, and so on. okay, convinced.
Nerchio: I wouldn't be surprised if some legend guys if dropped to the gold would have problems coming back :p
DanTheMan832: could some1 give me some tips for avoiding trapping myself in a corner and having to surface
ssda: finally in gold
AntiSquid: finally a major improvement :')
Nerchio: use alghoritms
Nerchio: like flood fill for example
AntiSquid: or maybe just randomness
ssda: god I will stop done was a long week
AntiSquid: get legend ssda
AntiSquid: neverending fun
ssda: AntiSquid ahh I'm a bit tired
AntiSquid: ya me too
AntiSquid: i kinda try hard to find motivation to change my code
ssda: AntiSquid fine I try to reach it I have ideas to start with
eulerscheZahl: the contest is too long to keep up with the motication
AntiSquid: no that's not the issue for me
ssda: me too my code style is shit but I am learning
AntiSquid: i think it needed the 1 month
AntiSquid: i just never really liked it, sorry
aCat: bleh - next time please someone kick my ass to strat coding right from the start :(
aCat: I started after 2 weeks
aCat: and now I have more todos than time
AntiSquid: i will gladly do it acat, any time, for fre
aCat: :*
aCat: Appriciate that - I'll keep your word then
aCat: *Appriciate
ssda: I started last weekend
ssda: let see what gold bot can do
aCat: sadly quite a lot
ssda: wow crash me
ssda: no dmg to him
ssda: :joy:
ssda: does the code for the bot change when I'm in IDE?
ssda: Gold bot I mean
eulerscheZahl: the boss? no
eulerscheZahl: but the boss is random
AntiSquid: i beat it on very rare occasions
Nerchio: antisquid tell me how to handle removing mines when enemy triggers them
Nerchio: ideally i would like to remove more than 1 that can't be there anymore but how :(
AntiSquid: i don't do that yet
Valdemar: mines[y][x] = false should be enough Nerchio
Nerchio: lel mineMap[y][x] = false is my code
Nerchio: xD
AntiSquid: ah i do have an array of possible positions, but i don't do any real mine handling for the opponent
Nerchio: but i want to remove 3 other mines as well
ssda: eulerscheZahl I mean on the IDE when you first enter gold will it change?
ssda: and sorry for late response my windows crashed
Valdemar: Nerchio maybe store player positions instead of mines positions would be better
ssda: & I believe it was origin store
eulerscheZahl: the default opponent is the boss unless you are in legend
eulerscheZahl: and the gold boss is random
ssda: ahh I see
ssda: thanks
Nerchio: i tried it valdemar but i don't see an easy way there
Nerchio: since when you trigger [y][x] in theory 1 mine can be connected to more than 1
AntiSquid: wait thibpat at 100 or so in gold, still streamin his code? wtf
Nerchio: more than 1 position
Valdemar: Nerchio I store mine map for every possible enemy state
Nerchio: me too
Nerchio: but when they put mine you need to add 4 to the map
Valdemar: no, I add only position from which mine can be placed
Valdemar: when trigger comes, you need to check 4 adjacent tile in each minemap
Nerchio: ok and 2 are 'true' so what then :p
Nerchio: you don't know which one to pick
Valdemar: then you need to split that state to several, and remove 1 mine in each of them
Valdemar: but i just ignore that case, it seems to be rare
Nerchio: so 2 maps then? mine map and position of "mine" action map
Valdemar: no, just duplicate state
Valdemar: if you ask about mine handling by map of possible placing positions, it can be generated on the fly
Nerchio: i am too dumb for this one maybe :P
Nerchio: zenoscave i crashed your bot xD
ZarthaxX: crushed*
ZarthaxX: or crashed :thinking:
Nerchio: crashed
ssda: crushed*
Nerchio: timeout
ssda: oh right
ZarthaxX: depends
ssda: hhhhhhhhhhhhh
ssda: lol
ZarthaxX: yeah lol
Nerchio: i am not sure what to fix anymore
BenjaminUrquhart: I gave up on this a week ago, I can't stay focused
ssda: Nerchio do not worry I'm dumper than you my bot do not know anything about enemy mine
icecream17: what? then how do you always beat me with like, 5 or 6 lives?
ssda: whom me?
icecream17: yeah.
icecream17: but wait, do you move up to gold?
ssda: yeah
ssda: just 10 min or somthing
ssda: this is what I want to know some info are much less important than other
Levvis: how to print
ssda: I hope there will something after the competition of how should we have done it
ssda: Levvis depend on the Lang
Levvis: does this website cover scratch
ssda: i do not think so
Levvis: how unfortunate
ssda: you won't write long complex code with scratch
Levvis: yes
ssda: so why bother :joy:
Levvis: because scratch is good
ssda: for teaching I think
ssda: I have never used it
Levvis: think they used it for google
ssda: where?
Levvis: the search engine
ssda: no way
Levvis: yeah
ssda: how old this lang is even
Levvis: idk
ssda: I just google it
ssda: the first prototype was in 2002 so no way
Levvis: definitely was
ssda: idk give any proof
Levvis: tim berners lee
ssda: what is this
Levvis: the guy who made the world wide web
ssda: how does that relate
ssda: and where is the proof
Levvis: just google it
ssda: google what
ssda: I'm sleepy now
ssda: will go after sometime
Levvis: uh ok
ssda: sorry
DanTheMan832: @Levvis I swear Ive seen u on YT
Levvis: where
DanTheMan832: @Levvis something about dreming in code
Levvis: i just stole the kids face as a profile picture
Levvis: I should probably change it
Zenoscave: bah right below gold boss
jules1: do i just have to wait for all the battles to complete in these competitions
jules1: to move to the next league (potentially)
RavenKZP: yup
eulerscheZahl: you are close to your first legend Zenoscave
Zenoscave: very very close
Zenoscave: possible bump or should i focus on resubmit?
Nerchio: it's gold resubmit is risky xD
eulerscheZahl: submit if notable improvement
Zenoscave: ok
Zenoscave: So not 1000 more submits got it
ZarthaxX: oh first legend
ZarthaxX: :O
ZarthaxX: nice zeno
Zenoscave: possibly still not sure yet
eulerscheZahl: my promotion improvement: disable mine avoidance when moving. then i turned it back on
eulerscheZahl: ZarthaxX you troll
ZarthaxX: i wasnt trolling
ZarthaxX: i meant like it would be his first one
ZarthaxX: lol
ZarthaxX: jus worded it wrong
ZarthaxX: just*
eulerscheZahl: ah
ZarthaxX: disable mine avoidance for promotion? the fuck lol
Zenoscave: what do you mean disable when moving?
eulerscheZahl: i have a danger map to avoid traps
eulerscheZahl: so i did: dangerMap = null
eulerscheZahl: submit, legend
eulerscheZahl: then turned it back on, was better in legend with it
Zenoscave: huh.
eulerscheZahl: dont ask
ZarthaxX: that's so wrong
ZarthaxX: LOL
Zenoscave: I'll do some benchmarking
eulerscheZahl: maybe it was a lucky submit
ZarthaxX: i would think it was
eulerscheZahl: but 7-2 vs the boss
eulerscheZahl: and 8-1 in legend
eulerscheZahl: before i turned it back on
Zenoscave: does he mine much?
eulerscheZahl: yes
eulerscheZahl: and my paranoid bot surfaces too often
Zenoscave: surface and retreat. I should add that
eulerscheZahl: hard to find the right balance
Zenoscave: can you move after surface?
eulerscheZahl: yes
Zenoscave: huh
Zenoscave: the more you know
eulerscheZahl: i think that's even disallowed in the original game
eulerscheZahl: oh, then you don't have the killer move either i guess
eulerscheZahl: that's your legend improvement
Zenoscave: I do have killer but it was awful
wlesavo: well with surface its much more effective
eulerscheZahl: Zenoscave https://www.codingame.com/replay/449658409
eulerscheZahl: my bot can even combine that with mine explosions so i can be sure to win without knowing the exact location of the opponent
Nerchio: when you submit too much the system punishes you? :D
struct: no
struct: maybe
struct: Indirectly
metahom: no but your conscience is
metahom: maybe the system too, dunno
eulerscheZahl: when you submit too much, you will get captchas and when you keep spamming, you can get blocked from submitting for up to 6h
eulerscheZahl: same for playing games in the IDE: if you play too many, there's a temporary disabling
Zenoscave: I hit that for sure
eulerscheZahl: submit 4 times in a row without even waiting for the results. 4th is captcha. (i had a randomized solver for an optim problem)
eulerscheZahl:
Zenoscave:
AntiSquid: Nerchio when you submit too much you get rewarded with a fun CG minigame
Nerchio:
aaronshenhao:
AntiSquid: gg zeno :p
Zenoscave: I lose random low games
AntiSquid: ya, see my bot msg if you need to debug
wlesavo: is it still printing muda muda? :grinning:
Zenoscave: yes -_-
AntiSquid: and top 100 is the new low eh?
Zenoscave: it is
RavenKZP: AntiSquid my MSGs are better for debug :P
AntiSquid: nice :D
AntiSquid: now you're ready for gold RavenKZP
RavenKZP: on my way
RavenKZP: i need to create some bugs because before removing them i was on silver 44 and after fix i go to 136 :D
AntiSquid: lol
AntiSquid: bugs are only good until you need to improve
AntiSquid: i rewrote my bot
RavenKZP: i guess they add some chaos to behavior and make it less predictable
AntiSquid: need to watch stream for heuristics now, thib pat got to mid of gold
AntiSquid: they only get you so far RavenKZP, precision is still needed :/
leegamer42: https://www.codingame.com/clashofcode/clash/1186253f4fe454cfb5af0331a3316441ea2d5a0
AntiSquid: leegamer42 please don't post the clash invite links in chat
AntiSquid: if players enjoy clash they will come and play it
leegamer42: but it says that i should share the url on the right panel
leegamer42: the website itself says it
AntiSquid: if everyone keeps doing that chat gets flooded with clash links
Zenoscave: it means share it in private chats
leegamer42: so make correction in the website
leegamer42: must have read it wrong
Zenoscave: not in public. never said anything about where to share
leegamer42: ya it is missleading in a way
Zenoscave: not really, you just made an assumption
leegamer42: it says to share with frnds, now one person can mentally think of this as a friendly place
leegamer42: or you guys as friend
AntiSquid: chill mate
AntiSquid: you get plenty people that play clash
Zenoscave: there are thousands of users on this site if everyone shared their clashes it would get crowded in chat is all
AntiSquid: many don't like clash btw
eulerscheZahl: then use the invite feature
AntiSquid: well someone better make a bot that spams clash chats with contest invites
AntiSquid: because it's more fun than clash
Enknable: Automaton2000 likes clash, right?
Automaton2000: i can give you some pointers
Zenoscave: pointer 1. don't invite people to clash
Enknable: Automaton2000 loves pointers too!
Automaton2000: it was just a bug
Zenoscave: what was Automaton2000
Automaton2000: it's just a list of moves
fluxtransistor: pointer * pointer2
Enknable: what about AutomatonNN? You like pointers?
AutomatonNN: eulerscheZahl is the most important part of the code for the same testcase
Zenoscave: typedef struct { struct * struct} Struct;
struct: :(
Enknable: lol
Ramdeath: Any difference fire torpedo | move or move | fire torpedo?
Zenoscave: slight change in possible paths ramdeath
Zenoscave: also range of attack
Ramdeath: so i can first move then torpedo?
Zenoscave: yes
fluxtransistor: Is there a way to find out the response time of your code in the IDE?
Ramdeath: tnx Zenoscave
Zenoscave: using a clock in the code and printing error messages fluxtransistor
Zenoscave: yw
fluxtransistor: thanks
Ramdeath: Zenoscave one question: SILENCE always last command?
struct: any order
aaronshenhao: If python can use timeit too
Zenoscave: you can do any order but it is usually best to silence early I think
idkhow2codee: why?
Zenoscave: masks moves better I think
idkhow2codee: nvm
Zenoscave: Early in the game i mean.
Zenoscave: I silence last at end of turn
Zenoscave: might have been confusing there
RavenKZP: wait so i can use MOVE and then SILENCE in same command?
Zenoscave: yes
RavenKZP: :fearful:
Zenoscave: ;)
Ramdeath: "MOVE E MINE | SILENCE N 0 | TORPEDO 3 3 | TRIGGER 2 2 | SONAR 5 | MSG text"
Ramdeath: like this
Zenoscave: yup
RavenKZP: ctrl+a -> del -> submit
Ramdeath: :D
RavenKZP: all i have to say
RavenKZP: man i was live in a lie
ZarthaxX: Zenoscave legend today?
AntiSquid: ctrl+z RavenKZP
Zenoscave: maybe ZarthaxX
Zenoscave: if i'm verrrry lucky
ZarthaxX: u deserve this one
ZarthaxX: :)
ZarthaxX: also you are tryharding with many days left
ZarthaxX: i believe un u
fluxtransistor: So I'm timing my program in python and if I start the timer the line before the first input() call and end it just before the last one, it gives me about 4 - 8 ms
Zenoscave: thanks
fluxtransistor: But if I start the timer the line before the first input(), it is somewhere between 2000-4000 ms?!
aaronshenhao: That's because you have to wait for the input() :P
fluxtransistor: * first text should be after the input call
fluxtransistor: Yes, but does it count towards my time
fluxtransistor: ?
aaronshenhao: Yea, you're just taking the time on the clock
Zenoscave: you can't get exact.
fluxtransistor: I'm using perf_counter(), giving ms accuracy
payroll-beats: Did anybody here solve the ASCII art
aaronshenhao: Which one
fluxtransistor: and 4 or 4000 ms is a difference
Zenoscave: but the time start can't be exact
aaronshenhao: input() is for user input?
fluxtransistor: It is for input by the referee
fluxtransistor: This specific one only gives my_id, width and height
fluxtransistor: So no waiting for the enemy bot
fluxtransistor: Any ideas?
aaronshenhao: Why do I keep getting a gazillion capchas
aaronshenhao: captcha*
DanTheMan832: How can you handle silence in relation to tracking the enemy?
AntiSquid: wrecking boss more often :o
Nerchio: top60 gold is a nightmar
AntiSquid: can't be that bad imo, i still have lots of room for improvement
SecondStriker: Can any one please tell me how to change difficulty for clash of code private clash?
AntiSquid: actually i agree with you nerchio, these guys are putting up too much resistance and make it annoying to reach legend @_@
WhiteGlove: is anyone currently doing the morse puzzle?
AntiSquid: chuck norris or bruce lee?
WhiteGlove: The Resistance
tobk: aw, come on, is there any bot that is NOT random? getting a timeout in some games, tried 5 different opponents, send to IDE, no problem.
WhiteGlove: chuck norris I still have it to complete
wlesavo: Go in legendo, nice
mlomb: tobk I feel you
eulerscheZahl: tobk most bots in legend are deterministic
eulerscheZahl: join us :)
tobk: I'm trying, but that's not easy with all those random non-reproducible bots in Gold ... :-P
idkhow2codee: guys how to get any debug output from my bot?
tobk: what, how to print it or how to see it? if the latter, when in the IDE or in a replay?
jacek: print to stderr
idkhow2codee: http://chat.codingame.com/pastebin/65d2c96d-4801-4455-aef3-d2f855e7120b
idkhow2codee: It doesn't print
idkhow2codee: row doesn't print*
idkhow2codee: is it because of for loop or smth?
jacek: it should be printed
jacek: unless loop isnt inovked at all
Zenoscave: are you showing debug messages?
Zenoscave: theres a little drop down that has check boxes that can disable it
idkhow2codee: yes
idkhow2codee: if I try outside of for loop scope then it prints lol
Zenoscave: what is MAP_HEIGHT set to?
idkhow2codee: 15
ZarthaxX: 3 quadrillions
Zenoscave: interesting
idkhow2codee: xd
idkhow2codee: k I'll try to fix it on my own thanks anyway
AntiSquid: so close yeshhh, soon to wreck the boss @_@
wlesavo: AntiSquid what he even did to you, pls dont rekt him
AntiSquid: blocking my way
AntiSquid: at the very least hope to be above kh ao and the rest of the TS guys
WhiteGlove: @DEIZ21 nice!
WhiteGlove: I'm trying another approach
WhiteGlove: I will convert first the dictionary and then check if its the same as the morse code given
Fangel: et dieu inventa le sonar !
AntiSquid: et Dieu a vu que c'était mauvais @Fangel
kovi: grat fangel
Fangel: thx kovi
AntiSquid: did you really reach legend thanks to sonar?
Zenoscave: Turns out I was doing sonar from opponents off by one move and removing my actual position from the opponent view of my possible paths
ZarthaxX: LOL
Zenoscave: oops
fluxtransistor: If I instantly get -1 hp after giving valid starting coordinates, is it a timeout?
fluxtransistor: also congratulations for legend
Chewie2k: What Maths does bank robbers use?
DEIZ21: so either your program take too much time or your program crashed
fluxtransistor: there is no stderr output
fluxtransistor: I'm trying to... if I try print a line in the main loop just before opponent_orders = input().split() it works
fluxtransistor: but after that it doesn't
DEIZ21: check your inputstream, i would say your program is waiting for an input forever
fluxtransistor: The input is given by the 'referee'
fluxtransistor: And I have not changed the input lines ;(
DEIZ21: the only thing i see in the instruction = input().split() i is that input() is waiting for data
DEIZ21: so go check how u initialized the input reader
DEIZ21: just give the time it deserve you ll find it
Zenoscave: gg Anti ;P
Nerchio: zenos legend?
Zenoscave: No. but close
Nerchio: :(
Illedan: What rank is the boss now?
Zenoscave: 28.28
Zenoscave: I do decent-ish against all but dolmen
ZarthaxX: he will leave soon
Zenoscave: 10% wins against him
Zenoscave: might bump him
ZarthaxX: so close D:
Zenoscave: nvm lost to boss last match
Nerchio: i feel like floodfill movement strategy is not very good
muy31: this question might be really late to ask, but why would I place a mine one way over another?
Nerchio: need to take control of certain areas of the map and use them
Nerchio: will have to rewrite movement tomorrow :p
Zenoscave: Should Resumbit? I have 60% wR against top 20 and dolmen promoted
Zenoscave: resubmit.
ZarthaxX: doit
Zenoscave: 40 Wins 30 losses against top 20. perhaps worth it
icecream17: i'm gonna delete this whole function - probably a bad idea
dolmen1234: hey thanks Zenoscave :)
Zenoscave: yw :)
AntiSquid: idk which game zeno, i submit spam, trying to find best version and trying to cure these bloody bugs
AntiSquid: referring to your gg
Zenoscave: It was a while ago
Zenoscave: I don't have a replay
AntiSquid: i have some stupid bug where the bot just surfaces for no reason :/
Zenoscave: strange
wlesavo: nice dolmen
Illedan: Daym, legend getting crowded
Nerchio: good submit brings me to ~35spot in gold xd lol
Nerchio: and i didnt change anything before i was ~80
RavenKZP: random algorithms :D
kovi: yeah, clibming became slower
struct: Many bots on same skill level?
Illedan: Mostly reactive bots, making it feel random
kovi: what is a reactive bot?
Illedan: Only reacting to the current state
Illedan: Not thinking ahead
Astrobytes: reflex agent, reacts to current environment only]#
Astrobytes: -]#
AntiSquid: q-learning algo results into a reflex bot - AutomatonNN change my mind
AutomatonNN: aggressive is the reason why i can't see them
Zenoscave: SARSA stands for what?
Astrobytes: Silly assholes request silly answers :P :D
AntiSquid: a virus? /s
Zenoscave: state action reward state action
Zenoscave: q-learning is two states not one
Zenoscave: nice silly answer Astrobytes?
Zenoscave: * ;)
AntiSquid: all a bunch of lice
Astrobytes: :D
**Muffle9 slaps AntiSquid around a bit with a large fishbot
Astrobytes: ┬─┬ノ( º _ ºノ)
**Muffle9 slaps Astrobytes around a bit with a large fishbot
**AntiSquid bans Muffle9
icecream17: there's a term for that: https://en.wikipedia.org/wiki/Wikipedia:Whacking_with_a_wet_trout
icecream17: sw2p?
jules1: anybody know of any fun alternatives to Clash of code? doesnt necessarily have to be on this site
icecream17: tic tac toe *grow*
AntiSquid: contest jules1
Zenoscave: contests
Muffle9: sorry just slapped my keyboard
AntiSquid: although i don't like this one, it's 10000000000 times better than clash
Astrobytes: Amen
Astrobytes: (used in a non-religious sense I may add)
muy31: (╯°д°)╯︵/(.□ . \)
icecream17: Zenoscave, AntiSquid, Astrobytes, all compound usernames
Zenoscave: Icecream17 is too
Astrobytes: beat me to it
Zenoscave: ;)
icecream17: does it really count though?
Astrobytes: ...
Zenoscave: is ice and cream two separate ideas?
icecream17: I don't know....
icecream17: didn't really think much about my username until now.
icecream17: but wait, a computer might split it into "icec" and "ream"
Zenoscave: same with ant and isquid
Zenoscave: doesn't make yours not the same
Nerchio: when this even started?
icecream17: i see (your example though...)
Astrobytes: Right, time to watch a movie and chill. Gn everyone
Zenoscave: gn
Zenoscave: gl hfg
ThePythonian: Gn person from a completley different timezone
icecream17: 05:21 PM
Nerchio: 00;21 am
icecream17: wow
AntiSquid: 23:30
AntiSquid: i am lost, what changes did i even make, which ones were the best, what is the meaning of life Automaton2000
Automaton2000: but i don't know why
Cappefra: how can I make my ocean of code bot play against a specific player?
struct: If he is in same league or below yes
Cappefra: yeah but how?
struct: press settings on left
struct: and enable expert settings
Cappefra: oh cool, thanks!
Nerchio: what do you guys use for movement?
Cappefra: feet
Nerchio: in ocean of code xd
Cappefra: dehihiho
Cappefra: I don't think there's a name for whatever I do
Nerchio: i feel like i need to change my movement to move further i usually die when i walk into a bad spot
Cappefra: I spawn in the largest rectangle and I move towards the most unvisited area
Cappefra: I recognize only the easiest deadlocks, meaning if they're straight in my direction and monodirectional
Cappefra: I want to change it to avoid enemy minefields... haven't really thought of how tho
Nerchio: i feel like going into the corner of the map so around let's say 2 square from the edge
Nerchio: is giving away map control
icecream17: Map control? I haven't even thought about that....
Cappefra: yeah at first I was moving only one direction until I couldn't, then I would perform a u-turn and keep going like that, but I noticed I gave away my position way too early on
Nerchio: I thought about it too late, after my 2000 line code became a giant mess
Nerchio: i actually have trouble with bots like this Cappefra ;p
Nerchio: if you move like that and use silence often enough its not so easy
Nerchio: i feel like my bot sometimes gives away his position much faster in certain patterns
Cappefra: Well what I do now is pretty much the same but my "one-way" movement is restricted to a randint
Cappefra: so it looks kinda the same as before but it keeps me a bit more hidden
Nerchio: imagine this
Nerchio: a bot that starts from 0,0 and goes to 14,14 covering every square in between
Nerchio: and places mine and silence
Nerchio: IF you let him get to the end
ZarthaxX: that may be impossible tho
Nerchio: then you're in big trouble since the whole map is mines
Nerchio: i kno
icecream17: =O I have an idea! A whole ROW of mines
Nerchio: 0,0 and 14,14 is is just an example
Nerchio: obviously you need to make it work for different maps
Cappefra: how do you track enemy mines btw?
struct: I think the biggest thing is to stay the loingest undetected possible
struct: I have seen anyone doing a row of mines
Nerchio: another possibility is like someone said
Nerchio: you start from the middle you make a row of mines and you just keep on 1 side of the map
Nerchio: you calculate which one is bigger
Cappefra: yeah I feel like that's probably the most effective way
Nerchio: so he comes to you and he dies
Cappefra: I think most top 10 do pretty much exactly that
Cappefra: from what I've seen
Nerchio: my random bot dies in stupid ways too much
Nerchio: not consistent enough for legend
Cappefra: you're high gold though
Nerchio: i was top 30 and top120 with the same code pretty much
Cappefra: I watch my games and I don't really know what to improve to get from my position to yours
Nerchio: I ironed out all the edge cases so it's more consistent but probably will rewrite movement
Cappefra: which is 260 ranks
Nerchio: well some kind of mine tracking is useful in gold i think
Cappefra: do you win against lechuck?
Nerchio: sometimes yeah
Cappefra: yeah mine tracking is on my todo for sure
Cappefra: I think I would enjoy this more if there was no silence
Cappefra: I hate silence hahaha
blasterpoard: Cappefra you get totally destroyed by mines, even if I use almost no silences www.codingame.com/replay/449899445
Cappefra: yeah I'm not tracking them at all atm, it wasn't necessary for silver and I just made gold today
Nerchio: i wonder why many people in legend use silence 4
blasterpoard: Nerchio because when you torpedo, you want to maximize the average damage - that means, you hit distances 0-3
Nerchio: makes sense didn't think about that
Nerchio: last square has only 2
Nerchio: maybe it's time i brought back my silence code
Nerchio: i commented it out and made silence N 0 every time :D
Nerchio: i will see how my bot does with silence 4 every time
struct: hi
Nerchio: capperfra i beat you with silence 4 ;D
Cappefra: hahaha
Cappefra: that's cause my bot is particularly strong against always-0 players
Cappefra: I have a separate tracking that hypothesizes tje opponent does that and ignores silence
Nerchio: omg
Nerchio: i don't like people who shoot silence n 0 :D
Cappefra: I can't tell you how strong that was in silver
Cappefra: even the captain did that
Nerchio: I lost so many matches where i shoot and silence and the guy just responds with direct shot for silence n0
Nerchio: like really
Nerchio: i could be in many other spots :D
blasterpoard: but shooting there hits most squares ^^
Cappefra: right? I'm especially pissed when it happens after I silence 4
Cappefra: blaster do you backtrace the enemy's visited positions?
blasterpoard: Cappefra what do you mena by that?
blasterpoard: *mean
Nerchio: see you tomorrow guys
Cappefra: like when you have its position you can trace its past moves since its last surface and you know exactly where it's been
blasterpoard: of course
blasterpoard: how would I track mines otherwise?
Cappefra: and then for every mine action you have 4 possible mines?
blasterpoard: no
blasterpoard: it works a bit diffferently, but you're on the right track
Cappefra: yeah I'll have to think about it a bit tomorrow
Cappefra: thanks!
blasterpoard: making it work without timing out is a bit tricky
blasterpoard: <1 ms now, though
Cappefra: cool!
AntiSquid: rank frozen on ladder :/
daffie: we're still having the annual code contest in a few days right?
daffie: derp it is april nvm
AntiSquid: annual ?
icecream17: what will the spring challenge be like?
AntiSquid: you'd have to ask the creators
icecream17: oh... i mean, is it like a regular contest?
AntiSquid: apparently
AntiSquid: how are you icecream17 ?
icecream17: ok. have some at home learning to do. also i'm restarting a whole function
Bugs__Bunny: https://www.codingame.com/clashofcode/clash/11868050d861f160302ed86c8881dd55b74c701
AntiSquid: don't post clash links here
AntiSquid: please
Famout: o_o wut.. this pathfinding bot I made in wood 2 is now advanced to silver...
Famout: I haven't had time to update it, and I just keep advancing....
Famout: ...It isn't even a good pathfinding bot either, sub-optimal... but good enough apparently?
Famout: I guess what I am saying is if you wanna feel good about your code, make a simple bot for the OoC!
RavenKZP: sometimes good pathfinding is best way to win :)
icecream17: What? 10851 possible squares?
MostComplicatedUsername: DIVIDING BY 0
MostComplicatedUsername: Aha!
MostComplicatedUsername: Im a genius
icecream17: In regular math 0 / 0 - undefined... but in the coding world it's NaN
Famout: Is there any place to see what changes in the leagues besides what they highlight?
MostComplicatedUsername: Well
MostComplicatedUsername: 0/0 = all numbers
MostComplicatedUsername: Anything else/0 = infinity
icecream17: Is 0/0 positive? lol
Famout: And negative too...
ZarthaxX: Zenoscave
ZarthaxX: did u resubmit
AntiSquid: did you improve ZarthaxX?
ZarthaxX: nop
ZarthaxX: why
icecream17: amazing. i lose because i can't put a mine anywhere. https://www.codingame.com/share-replay/449937470
icecream17: submit good night. hope i do better than 477th