Chat:World/2021-05-15

From CG community
Revision as of 12:06, 15 June 2021 by Chat Log (talk | contribs) (Created page with "<img src=/a/43900321199731> CouscousAgha: good luck! <img src=/a/63758603571200> ZarthaxX: nice! <img src=/a/63758603571200> ZarthaxX: doing opp prediction clock? <img src=...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

CouscousAgha: good luck!

ZarthaxX: nice!

ZarthaxX: doing opp prediction clock?

ClockSort: yes i treat the opponent as a first-class player

ClockSort: and the end of 90ms i can play both sides of the board :P

ZarthaxX: what?

ZarthaxX: first class player?

ZarthaxX: im confused lol

NinjaDoggy: yea first class you know

NinjaDoggy: like first class flight or something :P

ClockSort: you know, like, front of the airplane

NinjaDoggy: LOL

ZarthaxX: :rofl:

ZarthaxX: too late for this talk

ClockSort: what i mean is, i dont take any shortcuts with player 2. so they get a full search just like player 1

ZarthaxX: but is this simultaneous?

ClockSort: yes

ClockSort: @ninjadoggy it's thanks to you that i pushed through and built the full mcts :thumpsup:

ClockSort: hmm, that should not be thumps.

CouscousAgha: hey ClockSort give me back my points

CouscousAgha: XD

ClockSort: if i hit legend now then i'll be fresh for Google Code Jam tomorrow :D

CouscousAgha: how did i lose with 1 trees

CouscousAgha: LOL

ZarthaxX: how do you make it simultaneous

ZarthaxX: damn

dbdr: maybe just the rollout part is simultaneous?

ClockSort: i used a weird hack

ZarthaxX: wanna know in pm :)

ClockSort: i consider all my moves and all opponent's moves, pick the best of each using standard UCT, then apply both at once according to game rules, which reaches a new state.

dbdr: ok, this is DUCT then

ClockSort: i didn't know the name :)

Zenoscave: Eh GCJ is tomoroow?

dbdr: it means if each player has 10 moves, you have 100 children, right?

ClockSort: google shows me this paper, though: http://mlanctot.info/files/papers/sm-tron-bnaic2013.pdf

UndercoverToad: codejam today (in my timezone at least)

UndercoverToad: in 10h

ClockSort: @dbdr yes in theory, but in practice i fill the children on demand, so they don't all get created because some moves are bad enough to not be picked enough to be fully explored

ClockSort: and i prune a lot of children before starting

dbdr: right

ClockSort: is this standard DUCT?

ClockSort: lol wow the paper i linked basically explains what i do :P

ClockSort: Decoupled UCT

dbdr: yes, I think it is

dbdr: it's the obvious extension of MCTS to simultaneous, I think

ClockSort: i should get points for inventing it, but i see it's section 4.2 here: http://mlanctot.info/files/papers/sm-tron-bnaic2013.pdf

dbdr: we have a new MSmits

dbdr: reinventing existing algos :)

ClockSort: obvious in hindsight, this is the first MCTS so I've been learning/researchinga ton

dbdr: I forgot what Smitsimax was called

ClockSort: clearly not researching enough ha

ClockSort: btw @dbdr congrats on #2 Rust, hoping you take the top spot by end of contest! :thumbsup:

UndercoverToad: at the moment c# seems easier to win than rust

dbdr: thanks ClockSort

dbdr: I'm happy if another rust is high :)

ClockSort: i love rust too, i learned it just because it was cool

iggy12345: I'll be happy if I can get out of bronze

dbdr: I already got the language achievement, in Java and in Rust

ClockSort: one of my favorite cryptocurrencies (Grin) is written in Rust

iggy12345: wassup guys

dbdr: not ready to use Rust in contest yet ClockSort?

Numby: did someone say you could get the turn input from replays?

dbdr: Numby if you print it yourself

Numby: Ah

ClockSort: in fall 2020 contest i used C# because i didn't even know C++ yet. Now I've learned C++ enough to get to Round 2 Code Jam and ~1750 Codeforces rating. Not ready to switch to Rust yet :D

iggy12345: psh, why would you switch to rust when you can use C?

iggy12345: it's obviously superior

UndercoverToad: C is not C++

iggy12345: yah

UndercoverToad: and Rust has similar speed

iggy12345: because C is better

CouscousAgha: debatable

dbdr: don't feed the troll ;)

iggy12345: woah woah woah

iggy12345: I am not a troll

MMmm____MONKE: shit, what time is it for you guys?

UndercoverToad: 6:20am

CouscousAgha: 4:20am

ClockSort: i'm in USA, it's not too late

iggy12345: 11:20 pm

dbdr: time is -02D 03H 39MN 53SC

dbdr: no need for timezones

iggy12345: how the heck are you 2 days behind us

ClockSort: it's :evergreen_tree: :deciduous_tree: time

UndercoverToad: contest end

iggy12345: oh

iggy12345: duh

abenner: anything I can do about rust compiles timing out, I swear my code isn't that degenerate

CouscousAgha: btw what will happen when timer hits 0

MMmm____MONKE: dam 6;20am and 4:20 am

dbdr: there is even a time change twice a year, like in reality :)

CouscousAgha: let's say if someone submitted their code 10 sec before the timer hits 0

CouscousAgha: what would happen

iggy12345: well

jrke: submission will complete

UndercoverToad: submits and promotion will finish

CouscousAgha: so they gonna be stuck at the bottom of the rank?

jrke: you can submit even 1 sec before ending of contest it will be completed

jrke: no not stuck after ending of contest all pending submissions are completed

dbdr: I resubbed just before promotion to legend. started to get matches in gold, then in legend

jrke: then there mega rerun for legend players

dbdr: I wonder if that other submit also continued in parallel :)

UndercoverToad: only top100 in legend get a rerun

Zaphus: anyone here using a brutaltester on windows? just grabbed one, struggling with it (Zenoscave)

Default avatar.png NotSureWhyThisWorks: Yeah it works for me

Zaphus: it half works - it runs, but complains about negative scores - and never kills my .exes so I have dozens of them running

Default avatar.png NotSureWhyThisWorks: hmm I was using it mainly for python so it might be different

Zaphus: might give it a run with python starters to see if that is different

Counterbalance: bots probably time out

dbdr: Zaphus make sure not to print too much to stderr

Lysk: Zaphus I was having the same problem, I don't know how to fix it but a if the bot is slow enough everything works...

Lysk: some folks recommended me to use cin.good() to check for valid inputs and kill the bot otherwise

Counterbalance: my fork with the -timeout 2000 didn't help?

Lysk: not for me

Lysk: even with 2018 brutal tester :p

Lysk: so, it's weird but I have a piece of code that tries to predict opp move

Lysk: if I run it then brutal tester works

Lysk: if I remove it then the problem with threads not dying

Counterbalance: hmm one thing I just though of.. shouldn't make a difference, but I use g++ on cygwin for the bots

Counterbalance: though i used to feed it VS binaries too.. as long as they're console apps that should work too

UndercoverToad: what's that timeout 2000 fork?

Counterbalance: just the cli branch of my fork.. it has more options

UndercoverToad: the SDK has some constraints, did you get around them?

Counterbalance: yes, but for timeouts of 2s it's not necessary

Counterbalance: i have a patch for the timeout and for excessive stderr

Lysk: what is bugging me is that it's the first time this is happening (same gcc and java version as in fall challenge)

UndercoverToad: by default the SDK allows a total of 30s, you confuse me

UndercoverToad: that's 15 bot interactions

UndercoverToad: there is a timelimit for the first turn (default=1s) which can be extended and doesn't even count for the quota if I read the code correctly

UndercoverToad: and the per-turn timeout

ClockSort: i'm cutting too early, and by day 20 i have nothing and opponent has 8 large trees

Counterbalance: here's the patch from the fall challenge, it still applies on master: https://github.com/Counterbalance/FallChallenge2020/blob/cli/engine-timeout.patch

UndercoverToad: I see, you modified the SDK part too

Counterbalance: ahhh crap the -timeout wasn't in my branch, but yes, the sdk modification is needed

Counterbalance: that explains why it didn't barf all over the place

Counterbalance: anyway i coded my own referee that's runs 1000 games in 10s instead of 20 minutes (the difference is less with a search bot, but losing the 20 minute overhead is nice)

UndercoverToad: i did that last contest

UndercoverToad: this game feels to much rock paper scissors for me to trust batches

UndercoverToad: that's how Maug s reached 3rd: run an offline batch and then accidentally submit the wrong file

Counterbalance: wrong as in not the batch for nr 1?

UndercoverToad: the bot that was losing offline

SirLoxley: Need some help with the offline Game ... I want to run it from command line but it keeps telling me "Directory src/main/resources/view/assets not found."

SirLoxley: mvn exec:java -Dexec.mainClass=Spring2021

this is how I run it (from the root dir)

Counterbalance: cp -r src/main/resources/view/assets src/main/resources/view/assets/

Counterbalance: mvn package

Zenoscave: I fail to see the diff in the dirs

SirLoxley: cp: cannot copy a directory, 'src/main/resources/view/assets', into itself, 'src/main/resources/view/assets/assets'

Zenoscave: is it casing?

iggy12345: does the directory exist?

iggy12345: maybe you need to make assets/assets

Counterbalance: lame

Counterbalance: well,checkl if .../assets/assets/ has files.. if so, then it's okay

iggy12345: oh, but you are trying to copy a file directory into the same directory

Kellthazar: Im running from Intellij Idea just fine...

iggy12345: that seems redundant

Counterbalance: see https://github.com/Counterbalance/SpringChallenge2021/commit/940b5926c4c12595c87c197eabd2bc6d190da73d

Counterbalance: that's a slighly nicer workaround

Sanguigno: ca

SirLoxley: let me take that

SirLoxley: Ok, have to give up for the moment. Thanks though

Counterbalance: np. That copy command should fix it though - duplicate all files in ../view/assets/ to ..../view/assets/assets/

SirLoxley: still get nothing in localhost / test.html

SirLoxley: that's the actual problem

SirLoxley: anyway have to run, hiking day

Counterbalance: have fun

Default avatar.png NotSureWhyThisWorks: could someone give some tips on how to do move generation for a search algorithm when there are a variable number of turns between days. I've been stuck on this for a while and I can't find a way to do it efficiently. I have all the specifics (calculating seed options, grow options, etc) but no glue

Whiskee: I personally don't simulate days but turns, and WAIT is a turn just like the others since it can be at any point in the chain

Default avatar.png NotSureWhyThisWorks: I tried that first but I found comparing the evaluations didn't make as much sense

XeroOl: yeah, you need really good heuristics for that to work

XeroOl: that can compare competently across days

Whiskee: WAIT turns are those that update shadows, energy, etc. while all turns have a potential value of future gains

Whiskee: if you track what you can generate from your trees, then the day itself doesn't matter

XeroOl: yeah, it just means I'm going to have to write a heuristic that quantifies potential gains

Whiskee: it does

Default avatar.png NotSureWhyThisWorks: and finding all the next possible turns from each turn is a lot of redundant calculation. But I don't know of a clean way of fixing this yet

XeroOl: ^ that's a good point

XeroOl: right now what I have so far is pretty wasteful

XeroOl: I'm at the point where I'd just be happy to get my sim done before the competition is over

Default avatar.png NotSureWhyThisWorks: mine just keeps timing out lol

Whiskee: again, it isn't the only approach, but there are techniques to reduce redundancy if you go that route :)

Whiskee: I create a hash that is unique for any combination of actions with the same targets happening within the same day

Default avatar.png hoang2.nguyen: (╯°□°)╯︵ ┻━┻

UndercoverToad: is it just my impression or are submits slower than usual?

Whiskee: yup

jrke: yeah slower

jacek: happy Caturday

aCat: happy :-)

kovi: submits are definitely slow

UndercoverToad: congrats for legend aCat

aCat: thanks

aCat: I feel weird given waht I have inside

aCat: just optimized heavy pruned search

aCat: (but still got ideas to improve)

aCat: on actually one-element heuristic

UndercoverToad: the boss is weak, legend isn't what we are used to call legend

aCat: I know

aCat: and actualy that's make me feel weird even more

aCat: I mean - 2 days of making lagend of 30 people legend of 100

aCat: is hmmm some achivement

aCat: and this is...

aCat: waht - 400 people at the end?

UndercoverToad: not if submits keep that speed

aCat: It actually makes me loose motivation than other way oarund

aCat: *around

aCat: maybe because having a boss is a clear goal to optimize

aCat: I'm not so used to be in top places and just to optimize agains a bunch of other lplayers and their meta :thinking_face:

UndercoverToad: don't worry, you are not in the top places yet ;)

aCat: euler these ARE problems of the first world

aCat: were talking 100/6600

UndercoverToad: that's top 5% but not top 1%

aCat: I'm the memeber of the 5%

aCat: ^^'

aCat: don't worry I'll be working on this

aCat: but today got deadline for the COG reviews

aCat: 6 papers ;p

UndercoverToad: does that mean you have to work on them?

aCat: read, review

aCat: some I laready read

aCat: one is really interesting

aCat: 2 medium, others meh

Westicles: Interesting, looks like terry u16 prints his odds of winning every move

Marchete: noob question, beam search is per day (with N turns packed in the same Beam node)?

Zenoscave: I don't think many do that

jrke: zenoscave are you still heuristic

Zenoscave: no

Zenoscave: haven't been for days

aCat: from day 4 he see > 0.8 against me

aCat: what the predictions he has :D

aCat: must be great

aCat: Marchete you have beam for every action depth

Marchete: One question on top players

Marchete: https://www.codingame.com/replay/555729619

aCat: but its better (at least huge difference for me) to synchronize

Marchete: frame 24

Marchete: why grow 25 instead of 4?

Marchete: there are 3 size 2 trees, and one of them seems more suitable, more centered on better richness, without nearby shadows

Zenoscave: sun in next turns increases due to spookyness i guess. not sure though

Marchete: there aren't directional shadows

Marchete: at all

Default avatar.png CODE_LOVER: lol

Zenoscave: hm. in the next 6 turns?

Marchete: 25 even has a friendly shadow

Zenoscave: true. Not ure then

Marchete: Maybe it's because at N depth that decision was irrelevant

Zenoscave: who knows

Marchete: yeah, but as I'm a little retarded I wanted to know

dbdr: rust #1, gg terry_u16! :)

Kellthazar: Gratz!

kovi: testing through submit is hard when submits take 2hours

aCat: yeah, timings are awful :(

Zenoscave: It's even worse when your code times out in IDE often

Zenoscave: but not in submit

aCat: true - I'm still not suer about my timelimit settings - keeping them low for safety but thats clearly suboptimal

Zenoscave: Yeah it's hard to guage currently

UndercoverToad: i have these IDE timeouts too

UndercoverToad: with time limit set to 80ms

Zenoscave: I usually take 1.5x in IDE

Zenoscave: so try 60ms for IDE

Zenoscave: but of course you can't guage it's effectiveness in submit at that point

dbdr: 60 or 80 ms might have less impact than you think

Zenoscave: impact in what way?

dbdr: playing strength

abenner: dbdr is there any magic rust macro for performance like the c++ pragmas

UndercoverToad: rust is compiled in release mode on CG, no need

dbdr: :+1:

jacek: :unamused:

abenner: oh cool is target-cpu=native also part of the rust flags?

dbdr: I don't think so

kovi: is it just me or there are time jumps nowadays?

dbdr: abenner you can use fn annotations like: #[cfg_attr(target_arch = "x86_64", target_feature(enable = "popcnt"))]

dbdr: time jumps?

kovi: hmm, maybe sort is slow

tarriel: #[target_feature(..)]` can only be applied to `unsafe` functions\nsee issue #69098

ANJACE_Z: how to raise ur rank?

abenner: yes you can wrap safe functions around them though so it's not so bad.

geppoz: any clue why that referee for me, it works on my centos VM, but doesn't on windows linux subsystem (ubuntu) ?

abenner: I am running it on wsl

abenner: maybe check your java install?

geppoz: well it seems always all bots go in timeout at first move

geppoz: so it seems not related to java installation, they starts correctly (and I also see some of their stderr before they die)

ddreams: dbdr was it you that asked about the missing sprites locally?

ddreams: anyway, in case anyone else has the same problem I figured it out

ddreams: the assets need to be under assets/assets/, not directly under assets

ddreams: geppoz if there is any output from the referee (like warnings) it will stop

geppoz: ty, will check

geppoz: but I mean, not the brutaltester, just this: java -jar spring-2021-1.0-SNAPSHOT.jar -p1...-p2...

ddreams: hmm, ok

geppoz: it works if I put random move, but as soon as I put any "thinking" bot, timeouts

ddreams: timeout can also mean crash though

ddreams: which java version do you use?

ddreams: i had problems with a newer one, so installed 1.8

Michael_Howard: When you tap HISTORY on the left of the IDE and mouse-over the "About XXX hours ago", are the times in my time or CEST?

dbdr: ddreams I have ./src/main/resources/view/assets

kovi: hmm, i wonder if i resubmit now...will it be finished before final recalc?

geppoz: ddreams , that assets folder solved sprite problem for me

jrke: are submissions slow due to server or large pending submissions?

geppoz: well wtf it seems that referee is starting with full grown trees :D

geppoz: that's why my bots timeout

jrke: geppoz change league level

geppoz: where?

UndercoverToad: #!/bin/sh

java -jar cg-brutaltester-1.0.0-SNAPSHOT.jar -r "java -jar -Dleague.level=3 spring-2021-1.0-SNAPSHOT.jar" -p1 "dotnet ../Bot/SpringChallenge2021/bin/bots/arena/SpringChallenge2021.dll" -p2 "dotnet ../Bot/SpringChallenge2021/bin/bots/ide/SpringChallenge2021.dll" -n 1000 -t 4

jrke: are you talking about offline refree or brutual tester?

UndercoverToad: -Dleague.level=3 in particular

geppoz: offline refereee

jrke: gameRunner.setLeagueLevel(3);

geppoz: ty

UndercoverToad: you can do that as a command line argument too if you use Zenoscave's fork

UndercoverToad: maybe even without, didn't test

geppoz: I am using that

geppoz: seems it is needed then

dbdr: geppoz where did you copy the assets folder?

jrke: can you gimme link for zeno's form

geppoz: just i created another assets

Whatar: I had to remove the other two league from inside the source code even using the fork

geppoz: assets/assets

ddreams: dbdr yep, but in ...\Local\Temp\codingame\assets

UndercoverToad: https://github.com/LSmith-Zenoscave/SpringChallenge2021

ddreams: so you have to repeat assets :p

geppoz: all inside main\resources\view\assets\ , in main\resources\view\assets\assets\

ddreams: ^

geppoz: ty ddreams

UndercoverToad: but why does it find the background but not the other assets?

ddreams: finally local referee is useful

ddreams: I think it's the sprite library

dbdr: it is weird indeed

dbdr: you need to rebuild the jar after that?

kellbooby: hey

geppoz: y

jacek: https://staticfishki.iplsc.com/fishki_prod_2013_02_19/77887ff9b3b374b88075dfdae18545e0.jpg

jrke: i have modified referee a bit to play as many matches i can

Maxboyer: Hey guys, i'm trying to code in Groovy and most of the time, i get timeout, but my code is quite simple ... is it something to be expected?

ToshiTuringMachine: hi all. Did we have R language before? Now I don't see it anymore....

jacek: never?

Zandy156: does (-1 % 6) = -1 in C# ?

ToshiTuringMachine: what a pity. wanted to learn some R

jacek: yes

Default avatar.png SabertheLost: is the battle arena superslow?

jacek: yes

jacek: friday deployment :heart:

jrke: 310 results found for «Score - Computing»

jrke: :fearful:

jrke: looks like time for a break

elderlybeginner: I think they are computing battles with paper and pen now.

Xblue707: hi

ToshiTuringMachine: wow good job devs preparing starter kits for all languages

ToshiTuringMachine: but the server looks overwhelmed

timbersson: Hey

timbersson: Could anyone help me get rid of the the following message when I run the current challenge in brutaltester...

timbersson: "10:21:07,166 ERROR [com.magusgeek.brutaltester.GameThread] ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console."

timbersson: It looks like I need to configure logging somehow... but how?

timbersson: I don't really know Java :disappointed:

amzh: I have similar messages, but simulations still work fine

geppoz: someone answered yesterday

geppoz: you need to put an xml somewhere

timbersson: can I find that answer somehow?

Default avatar.png actualCoderTrevor: timbersson I have no idea if this is right but I saved a tab earlier and I think someone said you need to edit pom.xml with these changes: http://chat.codingame.com/pastebin/2b78c7e0-87fa-4f0f-a90a-1c77f74307d3 but I haven't done it myself so I may be way wrong

timbersson: thanks trevor, I'll give that a try

Default avatar.png actualCoderTrevor: You're welcome let me know if it works

geppoz: log4j2.xml in \src\main\resources

Default avatar.png actualCoderTrevor: Oh yeah it could be that file

geppoz: yes it is

timbersson: Yup that got it. Awesome. Thanks both

geppoz: np, has same problem yesterday, someone helped me ;)

geppoz: *I had

Westicles: for the groovy guy, it tends to time out unless you use: import groovy.transform.CompileStatic;

UndercoverToad: ToshiTuringMachine 11:20AM wow good job devs preparing starter kits for all languages but the server looks overwhelmed

UndercoverToad: most starters were shared by the community

UndercoverToad: staff is informed about slow servers

Zanoshky: do you guys know the github of a project where you specify which values needs to be changed to find best version of your algorithm

ddreams: timbersson put that into a log4j2.xml file and start the referee (inside the -r part) with -Dlog4j.configurationFile=log4j2.xml

ddreams: oh

ddreams: I was scrolled way back

UndercoverToad: you can try https://github.com/eulerscheZahl/ParameterFiddler not sure how well it does for this game

Zanoshky: thank you Toad

ddreams: that looks interesting

kovi: those cgbench spammers...

UndercoverToad: they can't anymore because of new play constraints

kovi: i know...but what other excuse can we come up for such slowness

ddreams: the parameterfiddler doesn't take high dpi into account :D

Nerchio: it seems like the problems come up at similar time every event lol

UndercoverToad: we have a :eyes: reaction from Thibaud already

dbdr: \o/

UndercoverToad: the param fiddler has a command line version too if you prefer that ddreams

ddreams: Thanks, I'll try that too

ddreams: can read it, it's just tiny

dbdr: how slow are the submits?

UndercoverToad: yes

UndercoverToad: 20% in 1h

dbdr: :scream:

DomiKo: 15% in 1H :D

Westicles: another memory leak?

Nerchio: Domiko simulation takes computation from all the servers

Nerchio: :thinking:

CouscousAgha: those mct bots are mining the servers

geppoz: while waiting for servers... question about montecarlo

geppoz: how should be choosen the random move, I mean

UndercoverToad: randomly?

UndercoverToad: you can try to make some more likely than others

geppoz: if i have 50 possible SEEDS, 1 COMPLETE and 1 WAIT

UndercoverToad: was about to say that

geppoz: WAIT should be choosen with 1/52 prob?

UndercoverToad: that's up to you but a higher WAIT probability will most likely give better results

geppoz: it is very different to chose 1/3 from SEED, WAIT, COMPLETE

geppoz: then choose a random SEED

UndercoverToad: you can try both and see what gives better results

geppoz: well

geppoz: problem is that is very different implementation

geppoz: in first case I had to count every single SEED possibility

geppoz: before to choose

MSmits: you can also random in phases.

MSmits: random a grow3 or wait, random a grow2 or wait, etc. until random a seed or wait

MSmits: no need to consider all actions every time

MSmits: it's messy and branchy

geppoz: yes, that's the point

geppoz: you are sayng the theory should work fine in that way?

geppoz: choosing 50%-50% consecutively ?

MSmits: it could work fine, it needs to be tested. Make a parameter for it :)

MSmits: but a lot of domain knowledge is important

MSmits: put in the bot what you know of the game, to lighten the load

MSmits: for example, you know with growth, it's always better to grow3 before grow2

MSmits: so why ever allow your bot to do the reverse?

geppoz: yes that is mathematically

geppoz: but other things not

geppoz: in theory SEED can be better as first in some case

geppoz: rare case

MSmits: yes

MSmits: but how about this

MSmits: consider it as an option for the first action in your search

MSmits: and then nowhere else in your search

MSmits: so it can be chosen as a move

MSmits: still tons of pruning done there

geppoz: uhm in the rollout shoudn't you go pure random to have an "impartial" evaluation?

MSmits: pure random is not the same as impartial, unless thats some kind of precisely defined technical term

MSmits: the idea of the rollout is to make it realistic

MSmits: realistic playouts are important, because they make you converge faster

MSmits: pure random is almost never realistic

MSmits: of course you take some risk by pruning in the random rollout, but as you get deeper, you can correct it

MSmits: btw, i feel like we're talking mcts now

jacek: hm?

MSmits: ?

dbdr: how can he be #1? https://www.codingame.com/replay/555809312

Whatar: maybe he throws the game when he can predicts a loss

dbdr: yeah, was thinking the same

jacek: or crashing after some date

jacek: planned obsolescence

dbdr: also not collecting points when he's winning anyways https://www.codingame.com/replay/555809988

Default avatar.png NotSureWhyThisWorks: how do they even measure the probability of winning? Is it with mcts?

dbdr: possibly

MSmits: you can check how many nutrients are on the board and how many trees left maybe. It's a reasonable way to estimate.

MSmits: but i think it's silly to throw the game

CouscousAgha: are these submissions time normal at this time of the day ?

CouscousAgha: or is it because of the weekend

Default avatar.png NotSureWhyThisWorks: maybe I will print my evaluation score compared to opponents to pretend like I am doing the same

Default avatar.png actualCoderTrevor: It's an unorthodox strategy to be sure

Default avatar.png actualCoderTrevor: Maybe it's to keep you from optimizing against the bot? Or just to keep you guessing lol

Default avatar.png NotSureWhyThisWorks: print("WAIT", "simulations= " + r.randint(100000, 400000))

Westicles: In a bunch of his losses he thinks he is at 0.99 then drops suddenly to 0 and sort of gives up

Default avatar.png NotSureWhyThisWorks: interesting

kovi: mcts solver tend to do that i was thinking about when doing breakthrough

MSmits: solver seems painful to write for a simultaneous mcts

ddreams: UndercoverToad needed to add "rank: 1 0" to the end of the brutaltester end of game output

ddreams: to make the fiddler work

Fubuchi: arena is too slow now, maybe it is because of weekend

MSmits: mmh i named my bot exe "0.exe" and now my windows defender thingy thinks it's a trojan horse

Astrobytes: lol

MSmits: crap it got deleted

MSmits: evil windows

Astrobytes: :rofl:

MSmits: I was teaching the other day and my students have to learn html/css so they're making a webpage

MSmits: this guy wanted to mail his files so he could work at home

MSmits: so i said zip it and mail it

MSmits: apparently we have a process running that deletes all zipfiles automatically

MSmits: :(

MSmits: I can understand doing this for unauthorized exe files, but come on

Astrobytes: hahaha, classic workplace issue

ddreams: so many companies now that are sending emails with stuff like " MailScanner has detected a possible fraud attempt from "eur02.safelinks.protection.outlook.com" claiming to be"

MSmits: yup

ddreams: and it's a link to their own site

Astrobytes: Last office I worked in, we had different levels of user with different privileges. That occasionally does not go well.

MSmits: yeah my zip files dont get deleted either

MSmits: it's just for students

UndercoverToad: right ddreams, the Param Fiddler assumes an older Brutaltester protocol from before the SDK

MSmits: but my exe files do

MSmits: i remember trying to play a game at work, copied it from USB and then it just deleted the exe file

ddreams: I had already modified that brutaltester line to include the scores from the game, so was easy

Astrobytes: Just rename it to something else

MSmits: if i could start it in 100 ms or something i could still play the game :P

ddreams: couldn't you run it from the usb drive?

ddreams: or would it delete it from there too :o

MSmits: i seem to remember that worked too, but a bit slow

MSmits: that would be really evil

MSmits: deleting from people's USB

UndercoverToad: evil doesn't help, I need eval

ddreams: to keep you safe

MSmits: same

ddreams: try an evil eval

Astrobytes: Assuming ownership of any and all peripherals attached to the system

Astrobytes: I thought you gave up euler?

MSmits: he's still submitting, so i guess not

UndercoverToad: just a few tiny modifications, nothing big

UndercoverToad: codejam in 3h

Astrobytes: ah ok

MSmits: have fun UndercoverToad

ddreams: gl

**UndercoverToad is nervous

Astrobytes: lol, there are submits still going from 8am

ddreams: I rejoined the fun too

MSmits: local testing seems the way to go :)

UndercoverToad: 9am my timezone

UndercoverToad: Thibaud already did :eyes:

Astrobytes: yeah I saw

ddreams: first 10 battles in no time, then nothing

MSmits: Yeah I am guessing there's a priority queue; IDE battles -> first 10 -> rest

Default avatar.png natofp: Im trying to run brutaltester locally on windows, I did almost everything but when i launch it i get error: https://pastebin.com/86N5vtLk

Default avatar.png natofp: May anyone take a look please and tell me whats wrong?

ddreams: too new java

ddreams: install 1.8

ddreams: or java8

MSmits: natofp i am assuming you're playing ghost in the cell?

MSmits: cg-referee-ghost-in-the-cell.jar

MSmits: because if were trying to do this for the contest, then you have the wrong referee

Michael_Howard: UndercoverToad have you eaten the UndercoverMice whose running wheels power the servers?

ddreams: you probably want this for this contest: https://github.com/dreignier/SpringChallenge2021

Default avatar.png natofp: I put referee from here there: https://github.com/LSmith-Zenoscave/SpringChallenge2021

ddreams: and you renamed it cg-referee-ghost-in-the-cell.jar ?

UndercoverToad: no Michael_Howard. and there must be a dead mouse under my roof, the room smells horribly

Default avatar.png natofp: yes i did

UndercoverToad: i wish that was a bad joke

MSmits: UndercoverToad tell your cat to eat his dinner

ddreams: ok, well, the other problem is that your java is too new

UndercoverToad: her*

MSmits: UndercoverToad tell your cat to eat her dinner

Default avatar.png natofp: ok so i will try to reinstall java and check after this

Default avatar.png natofp: so it should be java 1.8 right?

ddreams: yep

Astrobytes: My menacing spider has migrated to the other side of the room overnight.

Michael_Howard: UndercoverToad probably from their diesel powered soviet-era server machines.

Default avatar.png natofp: thanks a lot i will try this out

MSmits: then you won the staring contest Astrobytes

Astrobytes: Evidently!

ddreams: ten minutes for game 11, and I lost it

UndercoverToad: i'm climbing some ranks. mostly because stronger players are in submit

MSmits: Yeah weekends always give you the feeling you're ranked higher than you are, because everyone is submitting

MSmits: feeds disappointment in the end result

UndercoverToad: i'm used to it already

MSmits: to disappointment?

UndercoverToad: yes

UndercoverToad: probably no tshirt for me this time. but there's still codejam to save the day

MSmits: well you put the bar very high. I am very impressed with your succes

MSmits: I could not get a beamsearch working that well

Nerchio: C++ and rust everywhere again ? :P

UndercoverToad: you still have a day

MSmits: yeah and i havent given up, we'll see

ddreams: two days even

UndercoverToad: my submit is so slow I have a progress circle but not even an arrow to indicate the score change anymore

therealbeef: my submit just stopped at 14%, not even starting the next battle

UndercoverToad: [CG]Thibaud — Today at 1:02 PM I've pinged the devs. No news so far

Murat_Eroglu: How do you implement MCTS here? it is not a real turn based game, is it? Can anyone help me in any direction, so I can learn

Nerchio: from response on discord i'd assume the fix will take some time

FrancoisB: submitted about 2h ago, before dinner, it's now at 70%

UndercoverToad: that's all we can say. there is an issue with submits. it's reported, now we can only wait

therealbeef: ah, thanks toad

Michael_Howard: It still seems to be moving, just very slowly.

Michael_Howard: As more submits come in but none get finished, it will keep getting slower.

UndercoverToad: we've seen such cases before. it will get slower and slower, then someone reboots the server or does some other magic

Astrobytes: *download more RAM

UndercoverToad: :smirk:

Numby: When two players complete a tree in the same turn how is it determined who completes first? (this matter cuz nutrients)

Nerchio: its in the rules

Nerchio: both get same nutrient and its -2

CouscousAgha: hopefully the devs would be kind enough to fix it on a weekend

cegprakash: Numby both can't place the seed

cegprakash: you'll be refunded the seed cost but u can't use that tree on the day after

cegprakash: it'll become dormant

cegprakash: Nerchio he asks because he couldn't find it

cegprakash: coz it's sometimes difficult to search

Nerchio: yeah but im not sure which question you answered

ddreams: just some random info :D

Nerchio: he asked about completion not seeding

UndercoverToad: you can seed in a range that's equal to the size of the tree

Nerchio: you get income for trees not in shade

cegprakash: I see.. Numby both get same nutrients

UndercoverToad: because they aren't spooked

Nerchio: they aren't spooked because they are not in shade

UndercoverToad: - Keep it clear and consise - Avoid flavour text https://www.codingame.com/playgrounds/40701/contribute---help/contribution-guidelines

UndercoverToad: someone not listening to the own guidelines?

Nerchio: its weird they want to force their goals on me.. "End the game with more points than your opponent."

Nerchio: what if i just want to plant trees?

UndercoverToad: all I want is a nice pattern

UndercoverToad: but the opponent keeps placing at bad spots

FrancoisB: should a coop game really!

kovi: i like that idea

Sanguigno: One plants and the other chop?

kovi: anyway...i think now they changed the game rules...all we can do is wait...

Default avatar.png actualCoderTrevor: Bots that play together on a team of two versus another team of two would open up so many doors for complexity... Could be cool? :thinking:

Nerchio: would certainly be nice to blame the other bot and not mine for losing

Nerchio: :relieved:

Default avatar.png actualCoderTrevor: :laughing:

UndercoverToad: we had code a la mode for this

MSmits: actualCoderTrevor try code a la mode, it's not 2 vs 2, but cooperative

RoboStac: code a la mode worked like that. There was a lot of angry bot blaming

UndercoverToad: smits liked my bot being aware of the overall situation

Default avatar.png actualCoderTrevor: Oh cool I'll check that one out. I'm still pretty new to CG

MSmits: did you accept my plates UndercoverToad?

UndercoverToad: every time according to you

MSmits: ok, i wasnt sure, just that many people didnt :rage:

Nerchio: i didn't play that one

Nerchio: sounds fun :D


UndercoverToad: 3 player game, 1 has a break

UndercoverToad: so you have 2 players in a kitchen, preparing dishes to collect points

UndercoverToad: each bot gets 2 out of 3 total games, scores for those is added

Default avatar.png actualCoderTrevor: Hey this looks like overcooked with bots. I like it.

UndercoverToad: it is heavily inspired by that game

Default avatar.png actualCoderTrevor: Nice

kovi: fireworks is also coop

MSmits: full heuristic bot won contest

UndercoverToad: we also have a bomberman (HyperSonic)

MSmits: that's a fun game to code for, but a real timesink

UndercoverToad: i got a chance to see the winner's code at CalM. storing states as strings internally

MSmits: you get hooked

MSmits: funny UndercoverToad :)

MSmits: I guess it doesnt matter

UndercoverToad: no. just wasn't a good read

MSmits: did he/she do this because of inexperience?

MSmits: heuristic bots dont require a lot of coding expertise, but are mostly about understanding the game

UndercoverToad: no idea. I actually consider him a skilled coder

MSmits: ah ok, that answers that then

UndercoverToad: also strong on RAIC

Astrobytes: who won calm?

UndercoverToad: morozec

MSmits: I haven't lost a single game since my submit started half an hour ago :P

Astrobytes: Ah yeah

MSmits: that's 15 games :P

UndercoverToad: so you won the first 10 smits?

UndercoverToad: oh wow

MSmits: I am around rank 10-30 with this bot, so it's not that weird

MSmits: (gold)

UndercoverToad: i know, in legend it would have impressed me

MSmits: yeah

MSmits: the main reason i want to get legend now is the huge boost in ranking

MSmits: i will probably get top half there

ddreams: I realized I never submitted my best bot

UndercoverToad: that sentence could be from struct

Noyotens: anyone in legend

ddreams: 4-1 vs MSmits

UndercoverToad: i'll take a nap before codejam

ddreams: Noyotens stop asking "anyone typescript/legend/whatever" just ask your question

MSmits: 4- 1?

ddreams: played in the ide four times

MSmits: ohh ok

UndercoverToad: five

ddreams: right, counting

MSmits: he already forgot his loss

MSmits: selective memory

ddreams: hehe

ddreams: uhh one from the last battles :p

Noyotens: ok anyone have replay to how beat Miyaza

ddreams: look at the top gold for that

MSmits: you wont be able to see why they win though

MSmits: there isnt a specific trick to beating boss

MSmits: it's just... playing well

ddreams: it's also not enough to just beat the boss

Default avatar.png Aweorih: anyone knows how u can run multiple "MultiplayerGameRunner" if u run ur bot locally in the checked out source of the game? (like running multiple games in parallel)

ddreams: you also need to beat other gold opponents

ddreams: Aweorih brutaltester

Noyotens: i know

Noyotens: but my alghoritm is like :shit:

MSmits: poopsearch?

Noyotens: yeah lol

MSmits: innovative

ddreams: looking through the shitty moves and finding gold

Noyotens: https://www.codingame.com/share-replay/555829942

Noyotens: myaza vs myaza

ddreams: all the cpu is spent on boss self fights

MSmits: dont slow down my submit :P

jacek: time to promote in csb :imp:

ddreams: 15-1 so far

MSmits: lol, whyyyy

ToshiTuringMachine: 3 hours for 48 games in wood1

ToshiTuringMachine: I will never see gold

MSmits: your bot with continue promoting after deadline hits i think?

MSmits: will

MSmits: you just cant test your stuff

MSmits: on leaderboard

ToshiTuringMachine: rules are different in other leagues?

ToshiTuringMachine: :stuck_out_tongue_winking_eye:

MSmits: from bronze and up they are the same

MSmits: so get to bronze, then write a good bot

MSmits: but you can look up the rules in preparation

ddreams: you can also run it locally

TobiasA: do you have to win against a bot 100% of the time to get to the next league

ddreams: no

TobiasA: ok thanks

MSmits: just slightly over 50%, if you're near to 50% it may take multiple submits to drop rating of boss

MSmits: during which you will promote other players

Scarfield: you have to win enough so that your score is higher than the boss score at the end of submit

ddreams: lol multiple submits with this broken state

MSmits: or when you stay there, under boss, other players may push you over

ToshiTuringMachine: if you forget anything you lose 6 hours

MSmits: (only if you're near and win vs players)

derjack: is it only me or clash submits are slow?

ToshiTuringMachine: codingame has never been so slow, and I've been here since 2016

MSmits: derjack lol

MSmits: always creative with trolling :P

ddreams: this submit will take me to legend

MSmits: I hope so

ddreams: in six-seven hours

MSmits: then you can stop wrecking me

ddreams: :D

Hoyer: does anyone have good resources for tree structures in Rust? I decided to learn Rust for this challenge, but I'm really stuck on this and google hasn't been extremely helpful (outside of telling me it's a limitation of Rust)

MSmits: dbdr maybe

MSmits: though he's known this stuff a long time so not sure if he still knows where to find

ddreams: Trees are naturally occurring world objects in Rust. Players can harvest trees for Wood using any gathering tool such as a Rock, Hatchet, or Pickaxe.

Marchete: wish you luck to pass legend Kodle and MSmits :D

CoderDJD: I'm literally stuck with bronze, any context which might help?

MSmits: thanks Marchete

MSmits: i am mostly param fitting today, maybe coding a new search to experiment with, while I wait

MSmits: CoderDJD efficient seeding, try not to shade your own trees. Watch lots of games. during a turn if you grow something to size 3 and something to size 2, grow the larger first

MSmits: seed last (generally)

jacek: ^W^ https://img-9gag-fun.9cache.com/photo/aEpAXPo_700bwp.webp

MSmits: generally not needed to have more than 1 seed at a time

Kodle: haha thanks Marchete! finally managed to port my python search over to c++ for the speed up haha, seems to be doing alright fingers crossed :)

CoderDJD: Thanks MSmits, good luck with legend!

MSmits: thanks

Default avatar.png pn2501: Hoyer you can look for arena tree https://dev.to/deciduously/no-more-tears-no-more-knots-arena-allocated-trees-in-rust-44k6

MSmits: Hoyer i am not sure how it works with Rust, but in c++ i just make a giant array and index to it

MSmits: is that not an option?

Default avatar.png SabertheLost: My submit just beat my friend. So maybe top 500 silver.

MSmits: gj

Porsuk: I have seen people make the forest creatures say stuff

Porsuk: how do they make it?

MSmits: cout << "COMPLETE " << bestChild->actionIndex << " " << message << endl;

ddreams: add text after your command

AlMualem: print(Action,"your text")

Porsuk: like print("GROW 25 my comment")

Porsuk: ah

Porsuk: okay

Porsuk: will try, ty

AlMualem: de rien

CaptainHamburger: MSmits code leaked?:scream:

jacek: ?

dbdr: Hoyer: a performant way for trees is to represent nodes as indexes in a large Vec / Array

ddreams: 21 battles in one hour, nice

TobiasA: oh i thought it was only me

FrancoisB: Hoyer: Google Rust Arena

elderlybeginner: 52 in 3 hours :wink:

CaptainHamburger: Im winning i see: 27 battles in 2 hours

ddreams: and one of them against my previous bot

struct: hello

TobiasA: hi

ddreams: hi structure

ddreams: do you get pinged from that, btw?

struct: no

Hoyer: pn2501 MSmits dbdr I was also having trouble doing it that way, since you can't initialize an array with empty values and I couldn't get my Node struct to derive from Copy

struct: you can initialize an array with empty values

Hoyer: in rust?

dbdr: doing MCTS?

struct: ah in c++ I can

struct: GameState* Agent::states[3] = {new GameState[1000000], new GameState[1000000], new GameState[1000000]};

struct: static GameState* states[3];

elderlybeginner: how to compile contest referee (referee.java) into jar?

dbdr: Hoyer: do you want it initialized or uninitialized (unsafe but instantaneous)?

ddreams: elderlybeginner use https://github.com/dreignier/SpringChallenge2021

ddreams: but you have to use maven, e.g. mvn package

ddreams: if that's what you asked

Default avatar.png natofp: Im running brutaltester on Windows locally and exe programs which i test stop working after the game, does anyone know what might be the issue?

cegprakash: 1 day 19hrs left.. Me Panics

ddreams: if c++ probably not checking if stream in is still good

elderlybeginner: i installed mvn, make target, now how to get referee

Hoyer: dbdr I think I could make my program work either way

cegprakash: elderlybeginner get the referee jar from someone who already built

Hoyer: Right now my focus is completing in time :sweat:

Default avatar.png natofp: thanks a lot again ddreams

elderlybeginner: anyone eager to share referee? :wink:

cegprakash: but from I experience I think brutaltester can help u improve 50 ranks not more

dbdr: Hoyer: http://chat.codingame.com/pastebin/312ad417-7f31-4b29-b677-79dede1d13d2

dbdr: this should be very fast, but uninitialised, so up to you to initialize before use

dbdr: each node

Hoyer: hm yea makes sense... I guess you keep the node array in the main function then? I was trying something like this as a static variable, but Rust really didn't like that either

Hoyer: Lots of occasions where I need to change my way of thinking with this language

Hoyer: :grimacing:

dbdr: if you use a static you will need more unsafe ;)

CoderDJD: good luck to anyone whose tryna pass some level. Have fun.

dbdr: I store it inside a struct, which I initialize in main,before the main loop

Hoyer: that makes sense

Hoyer: alright I'll get to work, thanks for the advice everyone :)

ddreams: elderlybeginner after mvn package the referee is in the target directory

struct: damn top is so close to each other

Default avatar.png natofp: OK i still got the problem that when testing locally programs stop working, im using exit(0) when i wait during 23-th day, shouldnt it be ok? or should i close those programs with some command?

ddreams: should be ok, so attach a debugger and see where it's stuck

elderlybeginner: ddreams am I missing something https://i.imgur.com/HrIMSpu.png

ddreams: looks like you have compiled brutaltester

elderlybeginner: and I don't see referee

ddreams: https://github.com/dreignier/SpringChallenge2021

ddreams: ^ again, there's the referee

elderlybeginner: there is uncompiled referee.java in sources, brutaltester uses jar files this is all my guessing as I have no idea about java

ddreams: you are completely ignoring what I'm saying, so...

TobiasA: this taking a long time

TobiasA: i submitted a while ago and it is still in 15%

elderlybeginner: ddreams :wink: it's not about ignoring, I'm just like a child which does not understand

ddreams: brutaltester does not contain this game, you have to download it separately and compile it

CouscousAgha: any update on submits speed?

ddreams: 24 games in two hours

ddreams: so codingame is still broken

Noyotens: y'all testing is same time

Noyotens: this broke the server

CouscousAgha: well its the last weekend for the contest so i guess the servers werent ready for this

Astrobytes: This is ... fun.

Fluxor: same here.... 25 games in 2h

Astrobytes: there are submits still going from 5.5 hours ago

CouscousAgha: 40 in 3h

Fluxor: I guess it is useless to try and deduce anything from the result, since all IA will have changed in meanwhile...

Fluxor: Well, I do use brutal tester locally, and I submit only when I have at least + 20% win after running 500 games against myself... but unfortunately it tells nothing about the impact on the ranking. I happens that improving against myself just makes things worst against other...

Fluxor: at the end, only the real arena can tell...

ddreams: same

MSmits: this is true

ddreams: though every time I've reached 70%+ i've improved ranking, but that's not in legend

ddreams: rank 30 in gold now after 25 fights, one loss

Scarfield: 596 submits atm :'(

MSmits: rank 41 gold 28 fight 3 losses

ddreams: Fluxor: do you get any significant difference in win percentage after 150 games?

aCat: Magus nice !

aCat: I see now changes, something is happening

aCat: (except very slow resubmits ofc)

elderlybeginner: brutaltester uses jar file as referee, how to compile referee.jar from https://github.com/LSmith-Zenoscave/SpringChallenge2021

struct: looking nice MSmits

Noyotens: #save_codingame_server

aCat: better use Game runner directly from this project

struct: also my promoted bot on gold that was like 0.01 away from boss

struct: is 40th legend...

MSmits: it's not enough yet, but i hope a param fit will get me there

Fluxor: Before I resubmit, I was happy to have climbed from 38th up to 24th in legend, without submitting anything... but I guess now it is just because all the top players that resubmitted were stuck playing games at the bottom, too bad :-(

jacek: you have pretty avatar

Fluxor: ahah you too :-D

CouscousAgha: lost brothers

ddreams: elderlybeginner as I said before: mvn package

ddreams: will make spring-2021-1.0-SNAPSHOT.jar

ddreams: that's the referee/game

Michael_Howard: Just for a change, a reverse roast request - what is Miyaza doing wrong in this game I (or we) should be exploiting more? https://www.codingame.com/replay/555848522

ddreams: it's your bot, right? :)

Michael_Howard: I didn't write the boss, no :upside_down:

Michael_Howard: And he normally murders me, this game is unusual.

ddreams: oh, yeah, it was Bernard_Lowe

UndercoverToad: let us know if you need another murderer

ddreams: he probably started on the wrong side of the board

ddreams: silly mistake

Michael_Howard: UndercoverToad I'd *love* to get to the place where you can murder me.

UndercoverToad: oh, you can't even select you as an opponent

UndercoverToad: maybe you are in submit?

Michael_Howard: Yeah.

UndercoverToad: in slow sneak submit

Default avatar.png lpellieer: how do you guys evaluate your moves ?

ddreams: double eval = evaluate(g);

ZarthaxX: kodle is using c++ OH MY GOD

ZarthaxX: the python guy D:

Numby: Is it normal if I played 2k games from start board with random moves that all 2k end up as ties :S

VizGhar: with same seed completely normal :)

ddreams: it's not normal to play 2k games with random moves though :p

ddreams: jk.. you're doing mcts?

Default avatar.png MADDY-1: hii bruh

Numby: I'm not changing seed and keep calling Random.nextInt so should be fine

Numby: Yeah doing mcts or trying to lol

UndercoverToad: kodl e gave up on python? i'm genuinely surprised

Numby: I already tested by game advancing logic and it looks good. I basically replayed an entire game from a replay end to end by just selecting the action and apply it and end state matched perfectly

struct: Just wait until I submit my pascal bot

Astrobytes: Well, this is a productive day.

UndercoverToad: you don't have a Pascal bot

UndercoverToad: as a codejam player, is it bad to be happy about the slow CG platform today so I don't miss a lot?

Astrobytes: :rofl:

Astrobytes: not at all :D

elderlybeginner: is this java version issue (referee): https://imgur.com/b9TNU3S.png

ddreams: yes

ddreams: how's the code jam going?

reCurse: 639 computing o.O

DomiKo: 36% mmmm

Zanoshky: my bot beats boss 10/10 rounds, but I am still not promoted, why?

DomiKo: 64 battles in 4H :D

Astrobytes: This is almost funny.

Zanoshky: where is the codingame employess? why not spin off more was isntances?

Zanoshky: aws*

reCurse: Because it's not your money?

Astrobytes: Thibaud (community manager) pinged the devs. Heard nothing since.

CouscousAgha: because you dont pay anything

Default avatar.png Cjx_1: glad its being looked at. This is killing me--soo close to gold

Default avatar.png Cjx_1: just want to crank out a few more iterations lol

reCurse: Ping doesn't mean looked at

Noyotens: 2 games in houy

Noyotens: *hour

ddreams: I pay a lot because I code for the contest instead of for clients

Astrobytes: ^ what reCurse said

reCurse: Also long weekend in France so maybe people are out of reach

reCurse: Great timing

Default avatar.png Cjx_1: big hol, right?

ddreams: would be happy to pay my part of the servers

Astrobytes: Perfect time to have a contest.

ZarthaxX: true

Astrobytes: Cause nothing will go wrong.

ZarthaxX: so basically results are known already

UndercoverToad: that's what you get for hosting a contest during codejam

ZarthaxX: cant beat without submit testing

ZarthaxX: what toad :rofl:

UndercoverToad: what i'm writing makes no sense

Astrobytes: How unusual :P

ZarthaxX: haha

CouscousAgha: UndercoverToad how long is codejam

UndercoverToad: 2.5h, starts in 45min

ZarthaxX: submits are literally freezed

ZarthaxX: damn

CouscousAgha: oh it's just gonna start? lol

reCurse: Not frozen just very long

UndercoverToad: but it's round 2 already, you have to be qualified from a previous round to play

CouscousAgha: i thought it's already on

ZarthaxX: reCurse sorry i meant that

UndercoverToad: i'm preparing right now (starting IDE, tasting the interactive problem setup, ...)

ZarthaxX: this is not gonna get better anytime soon

ZarthaxX: :/

ZarthaxX: popularity hurts :P

ddreams: undercovertoad how does it taste?

dbdr: don't eat the problem! bad toad!

Astrobytes: :rofl:

Default avatar.png Cjx_1: do we not do lab saftey in cs?

Astrobytes: ZarthaxX: BUT THE NUMBERS THO'

ddreams: you can disappoint so many people at once

ZarthaxX: damn numbers astro

Astrobytes: Indeed.

ZarthaxX: highest ever excepto for the accoutnant?

Astrobytes: Donno. Haven't looked tbh.

ZarthaxX: toad has to know

Default avatar.png natofp: did anyone have issue with programs stopping during local testing? im dying from tilt

geppoz: natofp are you sure you are launching correct league level? I had same problem launching wood league...

Default avatar.png natofp: how do you change it?

geppoz: runner.setLeagueLevel(3);

AlMualem: i have issues with battles :/ too long

geppoz: in CommandLineInterface.java

Default avatar.png Cjx_1: all of us do Al

Default avatar.png SabertheLost: good damn, I gave cost to grow seed the same as grow tree size 2. It almost never thougth it was ok to grow from seed

Default avatar.png Cjx_1: the wood spirits are prepareing their counter offensive

tobk: This is getting ridiculous. Submitted 4h ago, now at 40%...

reCurse: It's going to get more ridiculous don't worry

CouscousAgha: wait until codejam starts

AlMualem: one Eternity later.....

struct: I think its time for a csb promotion

ddreams: 657 submissions calculating

ddreams: codingame has it's own code jam

Astrobytes: hah!

CouscousAgha: tfw it's been almost 4 hours and u still didnt reach the point to know if your bot is better or worse than before

JohnCM: think now need to wait a while for the rankings

tobk: also, I think rankings are pretty messed up because so many are still calculating and thus do not have their proper rank

ClockSort: i'm 8th gold and afraid to resubmit due to the backlog. is it common to drift into the next league?

ZarthaxX: ClockSort yes

UndercoverToad: "tfw it's been almost 4 hours and u still didnt reach the point to know if your bot is better or worse than before"

i'm in that state for days despite submits finishing

ZarthaxX: but submits are too slow for you to get pushed fast

JohnCM: clocksort i think you can just wait for someone to bump you up to legend

ZarthaxX: haha toad :P

elderlybeginner: when is the best time to jump up a league? when it's just open?

UndercoverToad: depends on whether CG can repair their servers ClockSort

ClockSort: hi @JohnCM <3

JohnCM: i just hope to beat this silver boss this time, haha got lazy to code this challenge

UndercoverToad: at the same time if you resubmit it won't be any faster

UndercoverToad: just wait it out

ClockSort: thanks @UndercoverToad

JohnCM: intending to do it purely heuristic-based. my silver code was like 30 lines

JohnCM: now i need to add more stuff for tree positioning to get gold

elderlybeginner: my gold code is like 30 lines still :joy:

JohnCM: wow that's advanced heuristics

elderlybeginner: +starter

UndercoverToad: you can always improve your heuristics with a simulation

daniserrano7: I got to gold for my first time ever!!!

ddreams: gratz

elderlybeginner: simulation needs to score the position, which needs to put all shadows on the board, which leads us to +50 lines at least :joy:

ClockSort: i'm at 1200 lines... keep writing :P

daniserrano7: But my code is 300 lines :sweat_smile:

UndercoverToad: around 650 lines including dead code

struct: o.o

UndercoverToad: didn't get my opponent sim to do any better than without :(

JohnCM: all the best clocksort

JohnCM: haha i actually intended to do monte carlo tree search but was too lazy to code out the game sim

UndercoverToad: i don't think that this game is a good candidate for plain MCTS

kovi: in the morning i was jking about last submit before recalc...but now...

UndercoverToad: but some top Japanese players are tweeting about DUCT

ClockSort: i'm using DUCT MCTS which is why i'm not in Legend :D

ClockSort: j/k

JohnCM: what's DUCT MCTS? got link to that

ClockSort: section 4.2 here: http://mlanctot.info/files/papers/sm-tron-bnaic2013.pdf

daniserrano7: Do you think its possible to reach legend with pure heuristics?

UndercoverToad: yes, there are some heuristic bots in legend

JohnCM: definitely, if you can code the heuristic well enough, you can reach legend

ClockSort: getting setup for google code jam now. see you in a couple hours!

ddreams: gl ClockSort

daniserrano7: cool!

ToshiTuringMachine: hi ZarthaxX how are you?

reCurse: I get the impression there's something O(n^2) going on

Wontonimo: yesterday i finished a MCTS , it performs worse than my MC-1ply bot (rank 140th), probably around 600th overall.

geppoz: MC-1ply means?

jrke: damn 52% battles in 5h

CouscousAgha: im sure someone is mining ETH with their bot

reCurse: I wouldn't be surprised if you stopped everyone submitting, then queue by batch of 100 people submitting, it would be 3x faster

Wontonimo: MC = montycarlo. 1ply means no tree search, just check all first moves geppoz

JohnCM: haha think i only get one good submit before comp ends

JohnCM: means a greedy AI per move is decent alr

struct: oh well back to brutaltester

Astrobytes: I've lost what little motivation I had

struct: good thing I got promoted yesterday

kovi: is this hurt your smurf testing recurse?

kovi: oh btw karliso is bronze...

CouscousAgha: are smurfs allowed in spring challenge ?

reCurse: If I have a smurf I'm not doing too good now am I

dbdr: reCurse, according to JBM it's the match scheduler that gets overloaded

reCurse: I think I heard CG say something like that before with their DB

reCurse: Thought they fixed something :/

Default avatar.png JBM: i wasn't that assertive

dbdr: sudo reboot

dbdr: * it works now *

reCurse: It's a long weekend in France right? What are the odds everyone is unreachable?

struct: yes

Default avatar.png JBM: wouldn't make much sens

Astrobytes: The total absence of any communication would support that theory

Default avatar.png JBM: i mean, they picked this week *because* it's a long weekend

jrke: what will they do for battles now 600+ ongoing submits

Default avatar.png JBM: it's not like it's a surprise to them

reCurse: The total absence of communication would have made CG go out of business 3 years ago, not the point

dbdr: live dangerously!

ddreams: Astrobytes no communication? I've heard several times today that Thibaud made an emoji comment this morning

Astrobytes: Yes. That's all.

Default avatar.png JBM: i'm sure he told the devs about it, yes

UndercoverToad: he also wrote a line

ddreams: oh my

Astrobytes: Oh yes. Thanks toad.

dbdr: :D

DomiKo: Good luck in Code Jam!

UndercoverToad: IDE :ballot_box_with_check: sheet of paper :ballot_box_with_check:

DomiKo: pen?

UndercoverToad: do you play too DomiKo?

UndercoverToad: pen :ballot_box_with_check:

DomiKo: ofc

UndercoverToad: same name as here?

DomiKo: yap

UndercoverToad: oh no, cat entered the room

UndercoverToad: why now?

UndercoverToad: just go to sleep

Astrobytes: They know things euler. Always.

UndercoverToad: parked her at the window

Astrobytes: good luck with that :D

dbdr: inb4 euler's cat gets sick

ddreams: over the keyboard

UndercoverToad: 40s, see you later

ddreams: gl

dbdr: glhf

Astrobytes: best of luck to you both

Gabbek: good luck!

DomiKo: another slow servers :(

kovi: maybe too many wrote heuristic + dogecoin mining instead of real search

reCurse: Another funny theory I have is the initial 10 matches get higher priority, people wonder why submit is stuck, resubmit, repeat...

struct: They probably do

struct: There is no other explanation on why they get computed so fast

dbdr: nice theory

MSmits: reCurse +1 That's a good one

MSmits: also because they want a better start, they do it a few times

Wontonimo: the first 10 seem to be executed all in parallel, where as the rest are serial

MSmits: 32 wins, 4 losses, rank 7, at 29%... maybe it's enough for legend?

struct: probably msmits

struct: come back in 4 hours

dbdr: you need 100% for legend

MSmits: lol

dbdr: that's the hardest

kovi: at this rate...you dont need to comeback

Gabbek: I've submitted 7h ago and it's on 50%

kovi: slowdown is exponentioal

Gabbek: so I imagine you should wait about 10h :(

Noyotens: guys why i cant debugging

struct: oh god

struct: Guess I will wait until 1 am or something to submit

kovi: and +1 for recurse...i looked at red circles on leaderboard...the more submission the more slower it gets

DaNinja: chopped trees causing log jam

Noyotens: guys why i cant debugging

please: tell me

MSmits: that emote doesnt work

ddreams: Noyotens how can anyone answer that?

struct: print to stderr

kovi: in the morning it was 2hours/100%, then 2hours/30%...now additional 5 hourse for another 30%

dbdr: kovi: 696 results found for «Score - Computing»

Noyotens: i can answer

Noyotens: but

Default avatar.png NotSureWhyThisWorks: the number of red circles is crazy, I just checked lo

Default avatar.png NotSureWhyThisWorks: lol*

Noyotens: i cant do console.error

Marchete: maybe if we all resubmit at once it will be fixed!

ddreams: creative way to clear up the jam

Wontonimo: glad i stayed up late last night and got in a last submit. it went fast

Noyotens: still not working ;_(

Wontonimo: Marchete :joy:

ddreams: I did a speculative submit instead of letting my gold #1 bot stay

Noyotens: still not working ;_( :cry:

reCurse: Stop with the spam and useless questions

MSmits: yay another game, rank 4 now :P

CouscousAgha: no update?

MSmits: I just got 1. A game fininished!

MSmits: I'm just brutaltesting locally... hopefully that will eventually translate to something good on the leaderboard overnight

MSmits: we can at least, still code our ideas

ddreams: true, but I miss being able to test against the people in legend

MSmits: yeah

MSmits: there's probably some way to do it if you know the agent ID

MSmits: I guess CG bench can help you there

reCurse: Let's make things worse!

MSmits: no, i meant, run 1 game

MSmits: not 100 :P

reCurse: Why 1

MSmits: because IDE doesnt let you select agent id

MSmits: of legends

MSmits: when you're in gold

jrke: whats CG benchmark btw

reCurse: Ohh

jrke: i don't know about that

jrke: any link?

reCurse: That's fixable by a few lines of greasemonkey

MSmits: it's a program where you basically run IDE without browser, so you can chain games and get statistics, but its not really working now. Nor should you run it when the server is taxed like this

reCurse: Wasn't there a whole extension based on that?

MSmits: i was merely mentioning it because it allows you to put in agent ids

reCurse: CG Enhancer I think

MSmits: reCurse yeah, but it doesnt work anymore i think

reCurse: Ah

MSmits: not sure

reCurse: Sucks

Noyotens: i am gonna use netural networks

Noyotens: the AIs is coming

Fluxor: MSmits: same here, I got some nice improvements according to brutal testers results, but I hope it translate for real...

MSmits: if you cant spell it, maybe try something else :P

MSmits: I'll be quite happy just to get legend

CouscousAgha: jackpot! i got 2 games at the same time

MSmits: even though many people got in there with the so called *easy boss*. It was not easy for me at all

MSmits: CouscousAgha one game from a different players' submit

MSmits: doent count for your 100%

CouscousAgha: never felt this good since the first time i hit top10 in gold

struct: I think im going to try duct, i still should have enough time

MSmits: do some duct struct

Payalord: I can't run my contest code in IDE at wood 2 league. Is it disabled?

MSmits: put some puct in the duct as well

struct: I never did it though

struct: But I dont see my current bot going any further

Marchete: never & 2days & duct

Astrobytes: DUCT or delete

Marchete: I don't know

MSmits: struct, If you do Duct, i have an easy way to test without completely messing things up

MSmits: start at the end of the game. Duct the last few turns

MSmits: then work your way back

MSmits: keep rest of bot for earlier turns

Noyotens: i cant use AI without dubegging :cry:

MSmits: end of game is simple/easy

Payalord: So for those who is late for the contest Play My Code doesn't work anymore in wood 2 league right?

struct: ill try it, thanks

Noyotens: no i am in gold

CouscousAgha: Payalord everyone are having server issues

MSmits: Payalord the servers are overloaded

Default avatar.png actualCoderTrevor: Plot twist: Noyotens is an AI

Payalord: Ok i see

Noyotens: no i am human

Payalord: so it works but not for everyone

Default avatar.png actualCoderTrevor: That's just what an AI WOULD say

Payalord: lol

Noyotens: ur right :bot_face:

Noyotens: why there no emoji

MSmits: they dont get created on demand

Payalord: hack the chat and implement bot emojis lol

MSmits: :robot:

Noyotens: MSmits u also think i am AI

MSmits: maybe a bugged AI :)

Noyotens: :no_mouth:

MSmits: oh, i thought ClockSort went legend with his mcts, but he's still here

MSmits: in gold

Payalord: Detroit: become human

Noyotens: i bugged the server that's why u cant submit *bugged AI sound

Payalord: I think I'll pass this contest. Too late for me

ToshiTuringMachine: guys what's the command to make a jar from spring challenge referee?

Altaire: mvn clean install

DaNinja: mvn package

Wontonimo: no Payalord, you could get to Silver in the time remaining with just a ifelse bot

jrke: i am in gold with if else bot

Payalord: I can't even test my code man

cegprakash: Payalord

Payalord: Play My Code in IDE here doesn't work at all

alchemsti: I think you can get to bronze by just spitting back the last viable move (they give you a list) and maybe waiting on the first turn.

Wontonimo: MSmits my MCTS can't break 400th Gold.

cegprakash: sort all possible moves by target index and print the move with lowest index that takes u to gold

cegprakash: we are all in gold

cegprakash: with 1 sort u can come to gold

Payalord: I was late to the contest

struct: Wontonimo is it single player mcts?

Payalord: And no option even to test the code now in wood 2

Payalord: When i click play my code in IDE nothing output

Payalord: No info at all

Payalord: No turns nothing

cegprakash: reset code

Payalord: tried

Payalord: same

Payalord: restarted browser reloaded page

Default avatar.png MyCCODE: Who knows how to solve rubik cube

Wontonimo: struct - yes, single player + very minimal heuristic for rollout = 600th gold

cegprakash: Payalord reset code should print "WAIT"

IamQuan: :>

IamQuan: heh...

Wontonimo: struct - i may make it 2 players tonight. meh

jrke: i think that minimax can give legend

struct: im going to try dutct yeah

struct: duct*

Payalord: Ok i have tested from firefox now and it worked finally

Wontonimo: nice

Payalord: So might be something with my chrome then

MSmits: jrke if heuristics can give legend, then any search can also

MSmits: so minimax too, yes

jrke: my bot is having patience

jrke: https://www.codingame.com/replay/555873961

jrke: lol

MSmits: Wontonimo I think mcts can work here, but in general, i find it pretty hard to configure a search (pruning/ eval) in such a way that it beats a good heuristic bot

Wontonimo: i'm not sure heuristic can get there anymore with so many new search bots crowding top of Gold

MSmits: that shouldnt matter

MSmits: if they are better than the boss, they are out

Wontonimo: Agreed MSmits, there is definitely a lot of heursitic in my MCTS

MSmits: correction, if they are better than the boss, they are out... tomorrow

Wontonimo: well, that ain't me then. my bot doesn't beat boss regularly

BrunoFelthes: omg, submits are stuck

Wontonimo: I was chasing your progress all last night MSmits :)

cegprakash: I don't know if my bot is climbing rank because it suddenly starts winning or submits are stuck for others

ddreams: yay, I found a bug in my bot, wonder if fixing it improves it :p

Astrobytes: No. By Marchete's Law it will be orders of magnitude worse.

Default avatar.png MyCCODE: I'm having a temperature quiz where you have to write a program that will return the closest temperature to 0 but I don't know how to check if we have to do the "POSITIVE" or the "NEGATIVE" number in the output

Wontonimo: (someone isn't working on the contest)

geppoz: :D

aes-salm: I TEST IN ARENA about 30 minutes ago and BATTLES IN PROGRESS 14%, did anyone have the same problem?

ddreams: 700 people have the same problem

Wontonimo: yeah, it's overloaded now

Default avatar.png nicknameasterix: yes, I do

TobiasA: i have the same problem

TobiasA: mine is 30% in 3 hours

BrunoFelthes: all contests, same problem

ddreams: 28% in 4 hours here

MSmits: 31%

ddreams: If it's the matchmaking that is the issue, CG should make a contest about it

MSmits: got my first real ladder match vs boss

ddreams: share it?

MSmits: https://www.codingame.com/share-replay/555878421

ddreams: sim perfect?

MSmits: oh yeah, every turn i check the sim vs next state of the game

MSmits: to see if it got predicted correctly

MSmits: i try all opponent actions and make a list of states

MSmits: it should be among the list

ddreams: ah

MSmits: if it's not, then my sim has a bug. I forgot to remove it after testing, but kinda like it

FrequentlyMissedDeadlines: North Korea proposed to lend their computer! it should double the compute

ZarthaxX: got a battle too MSmits!

ZarthaxX: what a great day to be alive

ZarthaxX: lol

MSmits: hehe

MSmits: hopefully my bot does well. Maybe i can pull him down a bit

MSmits: (the boss)

MSmits: oh you're legend ZarthaxX

MSmits: nice

Michael_Howard: Wanna bet it's all from one uselessly exponential line of matchmaking code that someone at Codingame wrote drunk in 2015.

ZarthaxX: oh yes got into it when legend opened, first time i didnt have to fight for it :)

ZarthaxX: you are getting there too MSmits prob

MSmits: starting to think I might yeah

MSmits: have more improvement locally *I think*

MSmits: hard to be sure

_martynas: Tried 1v1'ing 1st gold player for fun: https://www.codingame.com/replay/555883236

jacek: back. do submits work now?

JasperV: no

JasperV: 757 computing atm

ZarthaxX: thats not a sign of improvement necessary MSmits

Pick8chu: Guys

Pick8chu: What is your seeding weight algorithm? I seem to make bad choices finding a better spot to seed

ItsNotABug: 762, exclusively going up

Pick8chu: btw how do you know how many computing?

ItsNotABug: leaderboard -> score -> computing

ZarthaxX: https://www.codingame.com/contests/spring-challenge-2021/leaderboard/global?column=SCORE&value=INPROGRESS

ItsNotABug: 774 now

ZarthaxX: well, we can already call it gg and gz the top 3 right?

aniski: technically, it happened during all the recent contests, didn't it?

Pick8chu: first time so idk

ZarthaxX: hey ToshiTuringMachine!!!

Pick8chu: it seems pretty bad tho, I submitted mine like hours ago and still less then 30

ntroPi: I have a consistent timeout ... but it goes away if I add some error output? I hate Heisenbugs.

aniski: I submitted mine 5 hours ago, 32%

ItsNotABug: Yeah. At least the last 4

Numby: GUYS

Numby: I found why all my sims end the same

Numby: I forgot to undo my trees as dormant at the end of each day -_-

Pick8chu: How am i supposed to know which algorithm is better if I can't see the result :joy:

Pick8chu: wdym?

Pick8chu: you can undo your trees?

ZarthaxX: he meant in his sim

ZarthaxX: he didnt reset their state

Pick8chu: what is 'sim'

ZarthaxX: simulator

ZarthaxX: you implement a simulator of the game in your code, t

ZarthaxX: to use it for trying possible actions and

ZarthaxX: keeping the best

Pick8chu: wait

Pick8chu: how do you mean that you implement a simulator of a game in your code?

Pick8chu: your code is just to get out the best possible actions atm isn't it?

ntroPi: yes but to know what rally is the best we simulate the game

ntroPi: really

Pick8chu: how can you simulate the game?

Pick8chu: so you meant, to get the best possible action, every turns, you try every actions and see what's the best and choose that?

Pick8chu: So basically every turns you would estimate possible scores when you reach the end? is that possible?

ntroPi: no basically for every possible turn, simulate how the game would play out (assuming only simple moves until the end)

MSmits: You need a way to look at the current game state and give it a score that tells you how good this is for you

MSmits: then the simplest way to use a sim is to try each action

MSmits: then calculate the new gamestate

MSmits: evaluate it (give it a score)

MSmits: take the highest scoring one

Pick8chu: that's crazy that you can do that

ZarthaxX: are you beaming smito?

ZarthaxX: i got another game!

MSmits: this is not a very effective way to do things in this contest. for this contest you need more depth (more turns ahead)

MSmits: yes beaming

MSmits: I am brutaltesting parameters. Found some good improvement i think

ZarthaxX: nice

ZarthaxX: need to set up that some day

MSmits: normally i dont have a lot of succes with it

MSmits: i tend to pick my parameters well enough that any improvement comes down to overtraining that doesnt translate to leaderboard

MSmits: this time i did not pick them that well

Pick8chu: Could you explain little bit of how you could do 'You need a way to look at the current game state and give it a score that tells you how good this is for you'

Pick8chu: cause right now what i'm doing is

MSmits: you can count the number of trees you have of each size

MSmits: count the number of suns

MSmits: game score

Pick8chu: oh

MSmits: the way your trees are shading eachother

MSmits: the future income

Pick8chu: so like calculate the weight of it

MSmits: yes

cegprakash: fn getScore { return player[me].score + player[me].sunpoints/3 } Pick8chu

ddreams: kind of how you'd evaluate the board if were playing yourself

MSmits: if you know chess, then the best example for you is the simple material score that is used

MSmits: pawn 1 pt, knight 3pt etc.

Pick8chu: but to see if it actually is making a progress, you gotta submit a lot of time right?

MSmits: not sure what you mean by submitting time

ddreams: no, you can play in the IDE or use brutaltester

Pick8chu: brutaltester

Pick8chu: is that a program?

MSmits: Pick8chu if you are in a lower league, you should not worry about brutaltester

MSmits: just try different things in your bot that make sense to you

Pick8chu: I'm on gold league rn

MSmits: ok, then you might have to worry about it :)

Pick8chu: 400 something, i wanna be in the legend

ddreams: what have you done so far?

MSmits: well it's a bit late to actually write a sim and search if you have not done that before

ddreams: sounds like we're talking with you as if you were in bronze

Pick8chu: I was doing weighting but to see what i changed actually made it better, I had to submit everytime and see if my rank got up

Pick8chu: Haha sorry bear with me, I just started this

MSmits: currently it's impossible to do that

MSmits: better test vs yourself locally

Pick8chu: And I really appreciate your help

MSmits: brutaltester is used for that

Pick8chu: okay, i'll google brutaltester

Trottel-Nit: Just pick games from Last Battles that you lost, push them to IDE and check if your new version would win them.

MSmits: yeah, someone else might be better at explaining what to do

ddreams: you can download the game code and run it yourself, and brutaltester automatically runs it over and over for you

MSmits: i always need people to explain it to me also :P

Pick8chu: you guys are really nice, thanks a lot

MSmits: Trottel-Nit thats a bit hard when the opponent uses randomness

MSmits: or when you do

Pick8chu: Yeah, i felt that too

Pick8chu: with one guy i thought i made a good progress but

MSmits: or even if they use the full calculation time and their search terminates at a different point

Pick8chu: if I submitted it, it wasn't liking

TobiasA: after the contest you guys have to teach me what you are talking about

ddreams: my bot is random only in how much CPU cg is giving it

MSmits: stick around and do multiplayer arenas guys

MSmits: a lot of them are fun

ddreams: I wish I had time to do more contests

ddreams: last time I tryharded was in 2016 or so

Pick8chu: ddream why not?

Trottel-Nit: Yeah, thats right but at least it gives a hint and is much faster than submitting every time. And with brutaltester you can only play against your own bots, can't you?

Pick8chu: are you busy ?

ddreams: work and family

CouscousAgha: my motivation is slowly disappearing because of this :/

MSmits: Trottel-Nit yes thats true

Pick8chu: ah. good for you then

ddreams: became a father last year

MSmits: unless someone shares a compiled bot with you. I dont recommend that

Pick8chu: Wow

Pick8chu: congrats man!

MSmits: gj

Pick8chu: how is it being a father! you must be so happy

ddreams: hehe, it's very fun

ddreams: many people say the first months are so boring, but that's not my experience

ddreams: like "all they do is eat and sleep"

MSmits: I thought it was pretty boring :P

Trottel-Nit: boring? Who the hell said THAT? :-)

ddreams: but they are communicating quite early

ddreams: MSmits right now :D

Trottel-Nit: I loved the first weeks and months. Never felt so much love :-)

MSmits: my daughter is 14 :P

Pick8chu: wow

MSmits: so i've been there

TobiasA: must be nice

Pick8chu: I never imagine having kids haha

Pick8chu: Maybe I should start thinking, must be good

ddreams: how old are you tho?

MSmits: it's ok, I always wanted 0 or 1 child, since my wife wanted 1 or 2, there was overlap

Pick8chu: I'm 26 international age

ddreams: and your national age?

ProG_r_aM_m_er: just gotta beat silver, i can do this lol

MSmits: wait what is international age

Pick8chu: I think I would want to have 1 girl and 1 boy

Default avatar.png actualCoderTrevor: metric age?

Pick8chu: lol

Pick8chu: so i'm from korea

Pick8chu: and in korea, when you were born you are 1 yo

MSmits: oh ok so not an alien from another solar system with different size of year

Trottel-Nit: crazy

Pick8chu: and you get older every new years

Pick8chu: lmao

Pick8chu: no i wish

MSmits: well it's more accurate

ddreams: lua must have been made by a Korean

MSmits: you're 9 months old when you're born

MSmits: so 1 is more accurante

MSmits: accurate

Default avatar.png actualCoderTrevor: ddreams lol I get it

Pick8chu: I think either china or korea

Trottel-Nit: Never thought about that there could be different ways of counting your age ... interesting.

Pick8chu: that's fair, yeah true MSmits

Trottel-Nit: So, do you celebrate birthdays? Or is it all together on new year?

Pick8chu: we do celebrate our own birthday

Trottel-Nit: just not getting older ...?

Pick8chu: but we all celebrate it on new years too,

Pick8chu: now you said it, it does make sense

TobiasA: wow that's cool

TobiasA: imagine everyone having the same birthday

MSmits: reasons to celebrate don't have to make sense :)

Trottel-Nit: Solved the birthday paradoxon

Pick8chu: lol haha

Pick8chu: okay i'm gonna try to download that brutal something

jacek: introduction to algebra?

Numby: What are people using as their timeout (ms) limit? Dunno if my code has too high of a variance on time taken for an iteration but it frequently times out even at 60ms limit :( I start timer after reading first input

somnek: xqcL

ddreams: timeout can also mean crash

Marchete: only 18hours to pass smits

ZarthaxX: :rofl:

Pick8chu: it says '<path_to_maven>/mvn package', what should i type?

DomiKo: mvn package

ddreams: if you're in the brutaltester directory and have maven installed, just mvn package

Pick8chu: okay trying

Pick8chu: Oh working! thanks lol

ddreams: then you get the jar file in the target directory

ddreams: now you have to get the game, aka. referee

struct: Whats gold boss current rating?

ddreams: 50.27

ddreams: Pick8chu https://github.com/LSmith-Zenoscave/SpringChallenge2021

ZarthaxX: you can check on any replay struct

ddreams: 807 computing now

Pick8chu: actually the build had failed

Pick8chu: No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

Pick8chu: hmm

ddreams: you need java8

Pick8chu: yeah i thought i jsut downloaded it

ddreams: newer javas give you problems

Pick8chu: Oh

Pick8chu: jdk-8u291-windows-x64.exe

Pick8chu: i got this one, is this seems okay?

ddreams: looks ok to me, I used chocolatey

ddreams: choco install ojdkbuild8

Pick8chu: I'm learning so many things today lol

Pick8chu: I found i have jdk1.8.0_291

Default avatar.png Cjx_1: so disheartened by these submits </3

ddreams: yeah... sucks

Default avatar.png HDainester: hey is it still possible to rank up fro wood to higher leagues? A friend of mine is now in there for quite a it, winning every game, but he doesn't rank up (stuck at rank 24).

struct: submits are extremely slow atm

ddreams: HDainester not really at the moment

ddreams: practically broken

Numby: How slow is extremely slow

Default avatar.png Cjx_1: normally to beat the bot per league (and thus level) it requires top 1-3

Astrobytes: Overloaded server.

Numby: like hours? :O

Default avatar.png Cjx_1: ask them to check the leaderboards if their above that boss

ddreams: played 45 battles in 5 hours

Default avatar.png HDainester: is there a chance this will be fixed in time?

Astrobytes: Currently no indication as to when (or if) it will be fixed.

Default avatar.png Cjx_1: yeah, submits literally not going rn. Hours for just a handful of battles

Default avatar.png HDainester: ok thx all

ddreams: 30% in 5 hours... so 15 hours for perhaps levelling up

Default avatar.png Cjx_1: although--wait a sec

Default avatar.png Cjx_1: i just had a big group of battles go

Default avatar.png actualCoderTrevor: The first ten seem to be in parallel but after that it will crawl

Default avatar.png Cjx_1: meh--seems like false hope

Default avatar.png Cjx_1: yeah ^^^^^

Default avatar.png Cjx_1: prolly ment as a buffer

ddreams: the number of people waiting for scores is just increasing

ddreams: 816 now

Pick8chu: definitely not asians, it's 1am here

Pick8chu: okay just build successfully

ddreams: probably a lot of asians in the queue then, since it's been like this for over 8 hours at least

Default avatar.png Cjx_1: cries in tryhard

Astrobytes: Well. I'll come back later and check on this. I'm off to watch some paint dry instead.

Pick8chu: that's fair deduction haha

Pick8chu: How can i make refree .zip as .jar?

ddreams: mvn package makes a jar

CogitoErgoProxy: does this platform have troubles with stream api of java? it says that i've not read all the input (i use the stream after the standard code)

Marchete: in the eval, how can you control the COMPLETE part? I understand it's on endgame (day >15 , malus when more than Nx tree3), but what other way to control that?

ddreams: what makes you keep trees around?

PatrickMcGinnisII: if the diff in score is > nutrient value maybe

Default avatar.png Cjx_1: i just go off differnece in total trees lol

Marchete: trees generate sun

Marchete: sun is the economy on the game

Marchete: trees3 generate score

Marchete: score is the final objective

Default avatar.png Cjx_1: right on. Thats why even though its a super simple metric, if one has more trees than the opponent, shadows not considered, theyll be generateing mor sp

Pick8chu: how do you play your js code on brutaltester?

Pick8chu: i did 'js mycode.js'

UndercoverToad: rip codejam dreams :sob:

DomiKo: yeah

CouscousAgha: is it done?

DomiKo: we should do C2 :/

jacek: ?

UndercoverToad: domi and me both 56 points

UndercoverToad: i thought that would be enough

DomiKo: D1 matching euler?

DomiKo: me too

UndercoverToad: D1 random search

DomiKo: lul

UndercoverToad: just in a loop, for 300ms

PatrickMcGinnisII: MSmits congrats

UndercoverToad: i think i could have done D1 is a similar manner even (quick look at the analysis)

MSmits: ohh i am above boss

MSmits: but not certain, submit needs to finish

Default avatar.png Cjx_1: grats <3

MSmits: lots of wins vs boss though

Smelty: u in legend now?

Smelty: :0

MSmits: 5-1 vs boss

MSmits: maybe tomorrow smelty

Smelty: wow

Pick8chu: good job!

MSmits: at the speed this is going

Smelty: i see that ur first in my league

Smelty: and IM 1258 in my league

Smelty: ....being the noob that i am

MSmits: I guess UndercoverToad was right

MSmits: thanks for your confidence again :)

Smelty: oo.o

ZarthaxX: smashing it smito

ZarthaxX: gz!

MSmits: I have a new version ready to go with 65% wr vs my old one too

ZarthaxX: sheez

MSmits: if that means anything

MSmits: it migth be overfitting, who knows

Marchete: submit it again ezpz

TheBatMan_TM: hey can someone help me with this?

TheBatMan_TM: I am back with a web app doubt

ZarthaxX: are all those just optimized params?

MSmits: yeah

MSmits: i hadnt fitted anything before

ZarthaxX: damn

TheBatMan_TM: but last time somebody helped me, so i am trying again

ZarthaxX: didt change any term?

ZarthaxX: wow

MSmits: not really no, not in a while

Marchete: how do you adjust weights then Smits?

TheBatMan_TM: source: https://replit.com/@kaushikkalesh/Online-Notes

ZarthaxX: wow

Smelty: i invested everything into knight moves and now my ai sucks

MSmits: currently i do it like this. Say I suspect a good value is between 0 and 400

TheBatMan_TM: can someone tell me why my delete_note() isn't working?

Smelty: hmm

Marchete: like x*costs+y*sungain+z*positionalscoring

MSmits: i create bot 0, 100, 200, 300, 400

TheBatMan_TM: i think the problem is in index.js

MSmits: have them all fight

Smelty: k

MSmits: 10 battles x 400, so 4000 total

MSmits: then add up the wrs for each version

Smelty: huh

Smelty: Msmits ur over a point above the boss i'm confident in you promoting

Marchete: I don't have a suspect of what my x,y,z could be

MSmits: yeah seems likely now

Marchete: I was doing unit tests

PatrickMcGinnisII: i'll celebrate my small victories. :(

Marchete: like "test seeding"

Marchete: and it's seeding correctly

MSmits: what do you mean test seeding?

Smelty: yay won 2 out of first 10 battles....:(

MSmits: oh

Default avatar.png Cjx_1: you have to patrick :D

Marchete: scoring seed position

Marchete: from all free positions, check score

MSmits: ah ok, well i have two params that do somethign with seed score

Smelty: yes

Pick8chu: I kept getting 'Negative score during game 5 p0:-1' this error

Pick8chu: does anyone knows?

MSmits: well shadows mostly

Smelty: ._.

Smelty: Pick8chu what lang

Marchete: I have N weights for that :D

Default avatar.png Cjx_1: pika, thats an invalid oputput deal i think

Pick8chu: js

Pick8chu: js ..

MSmits: generally, you pick 1 param you keep fixed (I keep my score param at 1000)

Smelty: well...javascript..hmm

Marchete: sungain now + sungainfuture+etc etc

MSmits: and then you try to fit the others relative to that

Pick8chu: but i used exactly the same code that i used in IDE

MSmits: you can do some easy calc to see what a realistic range would be

PatrickMcGinnisII: 21st in my language...rofl

Smelty: try going past condition only if >-1

MSmits: you wouldnt want suns to be more valuable than score for example

Default avatar.png Cjx_1: you doing anything in parralell?

Default avatar.png actualCoderTrevor: Pick8chu is trying to get brutaltester to work - and so am I with similar results (python)

MSmits: Cjx_1 how do you mean?

Pick8chu: Oh hey haha

Default avatar.png actualCoderTrevor: I've been lurking to see if someone helps you / if I can figure it out first

Default avatar.png actualCoderTrevor: In my case (and maybe yours) it seems like the referee isn't outputting anything

Pick8chu: well mine too it kept saying 0%

Pick8chu: but i guess that's just cause i'm returning -1

Marchete: I usually just MC the weights until I hit jackpot :D

Default avatar.png natofp: you guys can just run the referee with inputs without brutaltester and see if that works

Default avatar.png DannyBoy1024: Does testing in arena also become super slow for you guys as well?

Marchete: but I need to improve the search algo too...

Default avatar.png natofp: for me even this crashes input programs :))

Marchete: too many things too little time

Marchete: :S

Default avatar.png Cjx_1: yeah danny, its broke rn

Default avatar.png DannyBoy1024: oops....

MSmits: yeah i still need to try a different search also

MSmits: just to see if it works

MSmits: should get to coding

Default avatar.png DannyBoy1024: I launched a test 4h ago and now it barely progressed 60%

Michael_Howard: Greatest feeling ever: finding the awful bug that's messing your whole bot the day *before* the contest finishes.

MSmits: then it;s getting beter

MSmits: better

MSmits: 4h 60% i mean

Default avatar.png actualCoderTrevor: natofp I did try that using the command brutaltester gives me for "playback". Well it tell me the command should end with -d but the referee says it needs an option for that or something and I didn't provide one

Default avatar.png Cjx_1: folks looking at full shadow lengths or just immedietely adjacent places, or disregarding them? Im yet only looking at adjacent squares only lol

MSmits: I look at full shadows

MSmits: for big trees thats important

Numby: where do I spend 95% of my time during sim? create a list of possible actions :(

MSmits: i dont create lists during sim

Marchete: I do a sun gain calculation Smits

MSmits: me too Marchete

Marchete: for all 6 days

Marchete: I add some decay

MSmits: for full game here

Default avatar.png Step_Bro: Nut

Numby: how do you store the possible actions

Default avatar.png Cjx_1: smart, I homebrewed too much and now I dont wanna go back and rewrite the amount Id have to to easily get full shadows lol I prly will have to today tho lol

Marchete: I have that too

MSmits: I haven't added decay

Marchete: but with a low weight

Marchete: I'm not sure about endgame sungain

Default avatar.png Cjx_1: numby, theyre stored for us if you start with one of the templates--in numerical order of the cell as well\

MSmits: me neither

Default avatar.png Step_Bro: Thicc nut

Pick8chu: Oh i got the same thing -d

PatrickMcGinnisII: MSmits u definitely did something...yesterday u were avg. beating me by 10 pts, now you are around 28 ... and i did change some stuff for the better on my end

MSmits: not sure about a lot of things

Marchete: I calc sungain current + expected growth+expected growth2+engame sun

MSmits: PatrickMcGinnisII yes fitting parameters better

Default avatar.png actualCoderTrevor: If I just copy-paste a bunch of text here it will automatically make a paste link right?

Marchete: I don't check "neighbours" or shadows

Marchete: but sungain futue

Marchete: future

Numby: I mean when simulating a game and at a certain state you first have to find what are the possible actions. and there's a number of them so need to store them in some list right?

MSmits: but if you do future sun gain you do shadows too

Marchete: it's faster for me too

PatrickMcGinnisII: Marchete where r u on leaderboard?

Marchete: I mean not just shadow

MSmits: btw future sungain might not properly take into account seed positioning

Default avatar.png actualCoderTrevor: http://chat.codingame.com/pastebin/6ca439c3-13fa-440a-96dc-4c6838762909

Marchete: ofc

MSmits: it takes many turns for a seed to give enough income for it to matter where it is placed

kovi: speedup on servers!

Marchete: but I don't get any better idea

Marchete: I'm like 3000th PatrickMcGinnisII :D

MSmits: tbh, all i have is a bunch of features that made sense on some level, i gave them a param (obviously a wrong one at first) and am fitting them today

Default avatar.png actualCoderTrevor: And the link it gives me looks like this: https://imgur.com/JRZLorn any ideas?

PatrickMcGinnisII: I'm still lurking aroun 1.1k overall

DaNinja: java -jar cg-brutaltester-1.0.0.jar -r "java -jar -Dleague.level=3 -Dlog4j.configurationFile=log4j2.xml spring-2021-1.0-SNAPSHOT.jar" -p1 "../x64/Release/Spring2021-ai1.exe" -p2 "../x64/Release/Spring2021.exe" -t 2 -n 30 -l "./logs/"

PatrickMcGinnisII: Marchete, u at 1471...smh

DaNinja: works for me

Default avatar.png actualCoderTrevor: Thanks I'll try that!

Marchete: it's the referee.jar published somewhere?

Marchete: spring-2021-1.0-SNAPSHOT.jar

Marchete: I know maven and sh*t

Nerchio: guys what do you think about search ignoring complete and doing just economy,

Marchete: no

Nerchio: i feel like completes need to account for enemy so they are kinda useless in a solo-search

PatrickMcGinnisII: ok, my echo dot just went off, who is phishing my network?

Nerchio: i override almost all completes of my search anyway

Marchete: I don't know :D

Marchete: don't generate completes until endgame

Marchete: problem solved

Marchete: or trees3 > 4 or 5

Nerchio: yeah kinda makes me wanna try ignoring completes in search tbh

PatrickMcGinnisII: i don't cut unless tree3 is >3 no matter the running score

Marchete: directly don't generate the moves

Marchete: in early game

Nerchio: if only submits were working

MSmits: they're a little better now

MSmits: but might still be very slow

MSmits: dont all submit at once now :)

Nerchio: yeah i'll wait

PatrickMcGinnisII: i think it's been an hour for 30%

Scarfield: since the cost of completing is more expensive the more trees of that size you have, there should be an optimum of when to start thinking about completing i guess. could try limiting it, instead of completely disregarding it(?)

Nerchio: my point is that eval is hard

Default avatar.png Cjx_1: thats a very hard tipping point to figuer out I think

Nerchio: when to sell trees and when not

Nerchio: so search can pick suboptimally because it tries to sell

Nerchio: if you rule out completes you can have much easier eval focusing on economy

Default avatar.png Cjx_1: honestly, I think its likely better to just use the opponents score and your trees as metrics for complete, but my endgame still sucks to be fair lol

MSmits: Scarfield it's a hard one to optimize, the opponent also enters into this. If he starts eating neutrients....

PatrickMcGinnisII: i figured out that if the cost of growing a tree3 is >10 then it's not economic

MSmits: it helps to hard-prune some things like, dont complete trees when you have few of them halfway through the game. Not because your search cant find it, but because it lightens the load on the search

MSmits: with beamsearch that means less states to beam

Pick8chu: could anyone help me to set up brutaltester?

Scarfield: yes of course, but a bad estimate of it, might still be better than removing complete from search entirely(?)

Pick8chu: it just kept saying i got negative score

MSmits: time outs

MSmits: i think

MSmits: your bot is crashing somehow

Pick8chu: 02:00:35,347 ERROR [com.magusgeek.brutaltester.GameThread] Negative score during game 3 p0:-1 02:00:35,347 ERROR [com.magusgeek.brutaltester.GameThread] Negative score during game 3 p1:-1

MSmits: this is my usage:

MSmits: java -jar .\cg-brutaltester-1.0.0.jar -r "java -jar Referee.jar" -p1 "./0" -p2 "./20" -t 8 -n 400

Pick8chu: which language do you use?

MSmits: bots are called 0.exe and 20.exe

Pick8chu: I see

MSmits: that doesnt matter, these bots are executables, compiled

MSmits: not sure how this would work with a non-compiled language

DaNinja: nice to have 8 threads! :)

Pick8chu: I uses js and it maybe cause of how i conpiled it

MSmits: yes that helps DaNinja, but i had to stop my yavalath solver :(

Scarfield: 824 results found for «Score - Computing» :'(

UndercoverToad: this morning when it start to get slow, there were 100 in submit

MSmits: yeah they fixed something at least, submits are moving

MSmits: just very slow

dbdr: you're still running it MSmits? :o

MSmits: yep

dbdr: wow

dbdr: :D

MSmits: me and 3 others above boss

MSmits: oh you mean yavalath solver?

dbdr: yeah

CouscousAgha: oh i think it's fixed now

MSmits: yeah, i restarted it later, it's now parallelized. I restarted because I polluted it with counterbooking

MSmits: want to run solver without interference

MSmits: two starting moves will solve automatically, but i still wonder if any of the other ones can be solved

MSmits: academic interest mostly :)

dbdr: awesome!

UndercoverToad: others call it obsession

UndercoverToad: but i'm impressed by it

MSmits: those are not mutually exclusive

MSmits: obsession is often amazing :P

MSmits: thanks UndercoverToad and you were right, i got there in the end

MSmits: still some ways to go but +2 pts should do it

UndercoverToad: i also predicted that you will rank above me

MSmits: yes you did and it's a possibility. Fitting params does a lot of good

MSmits: but i cant say for sure

UndercoverToad: i might run some offline batches tomorrow to hope for the best

MSmits: it well not hurt at least

UndercoverToad: except for overfitting maybe

MSmits: I am liking the method of creating 5 bots and have them all fight

UndercoverToad: did anyone get around the log file warnings for the brutaltester?

MSmits: it reduces overfitting due to drift

kovi: hmm, my code performs better when servers are ok

MindController: Holy, 7 hours into submit and only 70% done

kovi: 100%=#1

UndercoverToad: it's reported but staff is on a long weekend

DaNinja: I created a log directory, that fixed the errors

UndercoverToad: i still hope that they'll do something about it soon. we just don't know more

UndercoverToad: just a folder "log"?

MSmits: so they just log back in on monday and go like: "So, what'd we miss?"

DaNinja: yes

dbdr: gg kovi

UndercoverToad: anything else to consider? e.g. command line arg

DaNinja: -l "./logs/"

DaNinja: at the end

UndercoverToad: i'll try

UndercoverToad: 19:12:22,894 ERROR [com.magusgeek.brutaltester.GameThread] Error during game 4 19:12:22,895 ERROR [com.magusgeek.brutaltester.GameThread] ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. Set system property 'log4j2.debug' to show Log4j2 internal initialization logging.

DaNinja: try this

DaNinja: "java -jar -Dleague.level=3 -Dlog4j.configurationFile=log4j2.xml spring-2021-1.0-SNAPSHOT.jar"

UndercoverToad: ERROR StatusLogger File not found in file system or classpath: log4j2.xml

UndercoverToad: let's see where I can find that

DaNinja: https://github.com/dreignier/cg-brutaltester/tree/master/src/main

MSmits: 1 more battle for renarrd

MSmits: 49.83 > boss 49.46

UndercoverToad: ok, now just compiling the referee again with a setting other than info

UndercoverToad: or replacing info in that xml

UndercoverToad: no, the latter didn't do the trick

Pick8chu: does anyone use js?

Pick8chu: it gives me readline is not defined

ddreams: http://chat.codingame.com/pastebin/08caa0c6-3928-4aec-846a-44a3622ba008

MSmits: LeRenard is promoted to legend. Congrats

ddreams: UndercoverToad

LeRenard: Thank you for your help

timbersson: UndercoverToad someone gave me this earlier:

timbersson: http://chat.codingame.com/pastebin/3ed88507-2e83-460f-bef5-20c541f2b99a

timbersson: put in src\main\resources\log4j2.xml

ddreams: so battles are finally fixed

ddreams: yay

Default avatar.png Cjx_1: if this arena ever finishes, I think I may be low 300's in silver, maybe even mid 200's. Im personally hella happy lol :D Going for gold so hard lol

struct: recurse submited :D

struct: only saw now

jacek: :scream:

Astrobytes: lol

ddreams: I have a better bot too, but don't want to submit it...

ddreams: this one was beating msmits and he's numba one

UndercoverToad: then reCurse might reach legend on Monday

struct: lol

reCurse: Yeah thanks to that stupid scare...

reCurse: I choked

UndercoverToad: losing matches in wood1 already? :P

NinjaDoggy: lol

reCurse: I seriously thought the problem wouldn't get fixed and even promoting to bronze before end would be a close call

UndercoverToad: which was your alt? i would say probably someone from Japan

reCurse: Anyway nothing to see move along

UndercoverToad: wait, they did something to improve it now?

reCurse: Yes

struct: its better atm

UndercoverToad: nice

ddreams: still scoring over 800, but I got from 30 to 60 in lunchtime

ddreams: so something has unjammed

reCurse: Backlog will take a while to go through

UndercoverToad: we know that from league opening back in the days of from CSB promotions

reCurse: Thanks for fixing it CG but no thanks for the heart attack

DomiKo: Toad don't beat me :(

UndercoverToad: then don't fight me

jrke: recurse is that you - https://www.codingame.com/profile/316314dc83b90a6bacf4438dc504e1940285672

ddreams: starting fights you can't win isn't a good idea

UndercoverToad: you got me at codejam by a few ranks already. not that it would matter

reCurse: Streaming account jrke

reCurse: Had separate logins for everything when streaming

reCurse: Super restricted HDD access etc

UndercoverToad: not to accidentally leak anything?

reCurse: Yeah

UndercoverToad: wise decision, would do the same if i would be streaming

reCurse: Also streaming on secondary monitor

reCurse: So primary gets all the new crap

UndercoverToad: then again i would be a horrible entertainer. no one would want to see me for more than 5 minutes

reCurse: You're implying I wasn't

UndercoverToad: didn't watch long enough to tell :innocent:

reCurse: Don't blame you

Default avatar.png Cjx_1: if you tell me your wearing a toad outfit rn, id watch :P

Astrobytes: I thought you were pretty good at it tbh

MSmits: 5 mins is quite long. You could cover a song in that time UndercoverToad

UndercoverToad: and get a twitch strike

Default avatar.png Cjx_1: maybe occassionall ribbits? Thatd be funny lol

Astrobytes: haha

Scarfield: you were streaming this contest reBless?

jacek: stream this https://www.youtube.com/watch?v=zHU2RlSCdxU

reCurse: No a long time ago

Default avatar.png Cjx_1: a streamer HexTree_ did at least some streams of it in python

Scarfield: ah okay, thought i missed something :p

Scarfield: saw most of your locam videos on youtube before i started learning c++, probably worth having a 2nd look :)

reCurse: Nooo

struct: time to put it down :D

Default avatar.png Cjx_1: F, now IM watching hypnotoad for 10 hrs....</3

reCurse: The only reason I don't is because I mostly forget about them

ddreams: wonder if the game would be less asymmetrical if the starting trees were diagonally opposite

PatrickMcGinnisII: U guys need a life ALL GLORY TO THE HYPNOTOAD

Default avatar.png Cjx_1: PRAISE TO THE TOAD

Default avatar.png pszemsza: is the Spring Challenge going to be available later in Bot Programming?

reCurse: Yes

Default avatar.png pszemsza: cool, thanks!

struct: I wonder if pb 4 is still playing

ddreams: if they

ddreams: if they're not in the chat room, can they get pings?

reCurse: Only if they log in before history gets erased

struct: no

ddreams: no tab completion on pb

dbdr: lol, opp stops playing because he thinks he won, but... https://www.codingame.com/replay/555964133

kovi: wow

ddreams: lol, nice

Pick8chu: does anyone know how to compile javascript into exe?

Scarfield: xD

Pick8chu: i used node pkg but apprantly readline is not defined

ddreams: no, but you shouldn't need to

kovi: i think its because he detect and support another rust bot

Pick8chu: wdym?

Default avatar.png Alonius: Are there any changes in game rules in gold and legend leagues?

ddreams: you're trying to play locally, right?

Pick8chu: java -jar cg-brutaltester-1.0.0.jar -r "java -jar spring-2021-1.0-SNAPSHOT.jar" -p1 "js myCode.js" -p2 "js myCode.js" -t 2 -n 1000 -l "./logs/"

Pick8chu: yes i tried this

ddreams: what's js though? node?

Pick8chu: js myCode.js doesn't work so i thought

Pick8chu: yes i guess

ddreams: uhm

Scarfield: no Alonius, rules stay the same from bronze

ddreams: try writing node myCode.js instead

ddreams: haven't tried node on windows, but that's what I'd do elsewhere

Pick8chu: i just did and Negative score during game 1 p1:-1

Pick8chu: it seemed work tho

Pick8chu: time.��RED�� Player 0 was disqualified. ��RED��Player 1 has not provided an action in time.��RED�� Player 1 was disqualified.

Pick8chu: wait, is this timeout errors?

Lysk: probably yes

nikita_lutsuk: \

Pick8chu: Why tho? the same code would work fine in IDE

Pick8chu: it does work

Pick8chu: ...hmmmmmmmm

KelvinAndHubbles: tf the silver boss is in 29th place

KelvinAndHubbles: submits must be reallly slow

ddreams: Pick8chu probably playing in wood league

TobiasA: is the boss supposed to be higher lower?

TobiasA: silver boss that is

Pick8chu: @ddreams like go back and play there?

KelvinAndHubbles: well, I mean considering who ever beats it gets promoted, yeah

Scarfield: there are submits from 12.00 ish, they have been stuck for loong, but its starting to help.

KelvinAndHubbles: it's just theres about 30 submits currently beating it that hasn't finished

tobk: my submit from ~9h ago finished just now...

ddreams: Pick8chu no, the default league when playing locally is wood leage

ddreams: *league

Pick8chu: oh

Pick8chu: but I tried with the starter Kit

ddreams: so you have to write, I think, -D league.level=3

Pick8chu: like the basic

ddreams: oh

Pick8chu: there's no way it would give me a timeout.. but I should try that too

ddreams: ok, well, if you add "-s" to your options, you'll get a web server where you can inspect the output

Pick8chu: I think the problem is

Pick8chu: javascript doesn't have a funcion called readline

reCurse: It's hacked in by CG

Pick8chu: but somehow on codingame they use it to get inputs

BlitzProg: The more I try to fix my heuristic, the less I understand it. How am I even supposed to play

reCurse: Someone posted an implementation a long time ago

Pick8chu: oh they did?

Pick8chu: where?

Pick8chu: like community on CG?

reCurse: Forgot sorry

Astrobytes: May have been the discord. Though it might have been pasted in the forum somewhere too.

Lysk: -s is for swap, do you mean -l "./logs"

UndercoverToad: it was discord

Lysk: oops

Scarfield: DiscoBytes

Pick8chu: there's one on french but i have no idea lol

ddreams: Lysk that's in brutaltester, if you run the referee by itself it starts a server like an IDE playout

Pick8chu: https://www.codingame.com/forum/t/readline-et-print-en-js/2327/5

UndercoverToad: JS readline:

UndercoverToad: http://chat.codingame.com/pastebin/888f4c52-4ed5-4177-9374-74e141d4d5b8

Pick8chu: OHHHHHHHHHHHHH

Pick8chu: THANKSSSSSSSSSSSSSSSS

Astrobytes: ffs toad

Lysk: oh, got it, ddreams (thanks for the help thes other day for cin.good() by the way :) )

Pick8chu: ah.

Pick8chu: still doesn't work...

UndercoverToad: did you find it too Astrobytes?

Astrobytes: Yes!

Pick8chu: fd = fs.openSync('/dev/stdin', 'rs')

UndercoverToad: in the Ocean of Code thread. That will be deleted at some point

Pick8chu: this doesn't exist

UndercoverToad: i still don't get why some channels disappeared. can't you just make them read-only?

Astrobytes: Clutter?

UndercoverToad: fountains of knowledge

Default avatar.png Cjx_1: ok I got it. I just need to redesign game.board I think. This will work, and be worth the time. (he said without much belief in the words lol)

Astrobytes: Who am I to question

Scarfield: Submit count dropping 729 results found for «Score - Computing»

ddreams: Lysk yw :)

UndercoverToad: 724

UndercoverToad: we are on the same page Scarfield

Enknable: omw to gold! :)

Default avatar.png Cjx_1: gl <3

CouscousAgha: holy * the top 20 spots in gold is literally at war

CouscousAgha: everyone are fighting for legend

Scarfield: we were literally xD

CouscousAgha: beautiful

UndercoverToad: those are the legend bots stuck on slow submit

Numby: Lol 3 people above boss now

Default avatar.png Cjx_1: I think all the way to silver will be quite heated for the rest. I cant imagine the savagry in platinum lol

Scarfield: on the same page that is

Numby: 4*

Lysk: wow 363 submit in gold oO

MSmits: damn i am dropping, very near boss now

ZarthaxX: F

Lysk: still a good margin above the boss score

ZarthaxX: its a bit random

ZarthaxX: you had a good streak smito :(

MSmits: yeah

UndercoverToad: https://www.codingame.com/replay/555982654 a new opening - and it's 1 sun better :o

UndercoverToad: should check again with me upgrading the large tree later maybe

UndercoverToad: my opening is poor

ZarthaxX: hardcoded opening? :P

DomiKo: why not use search instead of opening?

UndercoverToad: i do

UndercoverToad: but my search is bad

DomiKo: yeah I beat you

DomiKo: :stuck_out_tongue:

Default avatar.png Jelle: How to start the escape room game?

Default avatar.png nader5: how to learn on this website

aangairbender: Jelle go to https://escape.codingame.com

Pick8chu: GG

Default avatar.png Jelle: Yes I started and got a number and a link

Default avatar.png Jelle: but then nothing happens

ddreams: I think people say check your email

Default avatar.png Jelle: nothing in inbox

ddreams: spam? though I have no idea really

Default avatar.png Jelle: Nope also not there, thanks for thinking along

CouscousAgha: LOL TOP GOLD IS LITERALLY AT WAR

ddreams: I don't like that brutaltester is printing output ignoring draws

CouscousAgha: are you guys witnessing this

Twelve0: and gold boss's score is increasing!

MSmits: oh come on!

MSmits: 0.06 below boss now :(

Scarfield: just resubmit

MSmits: lol

Scarfield: xD

ddreams: lol

CouscousAgha: i dont htink u need to resubmit if you are 0.2-0.1 below boss

ddreams: I will resubmit soon

CouscousAgha: one push from another player and you are promoted

ddreams: well, I'll wait the last 10% nwo

Scarfield: you will get there im sure, if not now then just a little push

MSmits: yeah i guess so, it's really annoying though, i have a better version offline

MSmits: but if i submit it, it will take forever

UndercoverToad: then submit and go to bed

MSmits: not yet my napnap time

ddreams: it's progressing at a good speed now

ZarthaxX: ^

Scarfield: oh, yea :/ looks like the submits are going faster and faster though

dbdr: UndercoverToad still waiting for your morning submit? :D

UndercoverToad: dealing with my codejam disappointment

ddreams: oh, what happened?

dbdr: :(

UndercoverToad: took a short walk after and of course got the idea how to solve a problem

ddreams: brains

ZarthaxX: ;(

UndercoverToad: i needed top1000 and reached 1194. that's what happened

struct: thats normal

ddreams: ack, that sucks

ClockSort: that's rough, sorry @UndercoverToad

MSmits: that's why i dont like short contests.. I need walks to get ideas too

MSmits: sucks

PatrickMcGinnisII: I walk to the fridge

dbdr: I spent the whole day trying to make a more clever search work. I just realized I was using a stinky old eval that ignores the opponent :upside_down:

UndercoverToad: i see you failed that round too ClockSort

ClockSort: I got 2845th place, yeah

MSmits: lol PatrickMcGinnisII

UndercoverToad: robo at 2856

ddreams: you care about the opponent now, dbdr?

ddreams: :p

ClockSort: I couldn't even solve Matrygons ... i was going for the biggest test set on it

UndercoverToad: i solved small first and then returned for big

UndercoverToad: but on C and D it remained small

alchemsti: sorry to hear that UndercoverToad

ClockSort: solving D small put me ahead of all the other small guys because it was 1pt more, haha

UndercoverToad: i wrote a random solver and let it run 300 ms on each testcase, taking the best result as the answer

alchemsti: Google's code Jam? Did you have a motivation other than a cool contest?

ClockSort: it was a tough round, you needed to solve two of B, C, and D to qualify

dbdr: ddreams I was trying to, if not for that bug

UndercoverToad: i'm collecting tshirts, that was my main point of motivation

ClockSort: :sweat_smile:

reCurse: Wear them all at same time and aim for world record

UndercoverToad: that could cause damage to them

alchemsti: Ha! That's a good motivation, IMO

dbf: UndercoverToad - if you have too many t-shirts, check this one: https://1.bp.blogspot.com/-RT69bnWgb3g/UsmkKfza4RI/AAAAAAAAfZY/GksJbTYqe4U/s1600/IMG_20131229_205945.jpg

DomiKo: Petr I see

ClockSort: http://chat.codingame.com/pastebin/606d224a-5c5d-4740-9664-d6d85c9f069c

ClockSort: @UndercoverToad see above pastebin

UndercoverToad: dbf that's horrible

MSmits: submit fininished. 0.09 below boss

MSmits: just needs 1 battle

MSmits: damn a loss

CouscousAgha: I got you MSmits

dbf: UndercoverToad I think in this mode they will be save better than if you wear and wash them regulary :)

ddreams: practically in legend then, MSmits

Zenoscave: MSmits that's rough

Zenoscave: are submits faster again?

zasmu: me too, gonna kick the boss :)

ddreams: yes Zenoscave

MSmits: well I'll go take a break, I may get pushed over later

ddreams: they're working well now

Scarfield: not well id say, but definately better

kovi: maybe just wait to be pushed (boss pulled) by pending submits

Zenoscave: I feell asleep during my last submit

ddreams: still have a huge backlog, but 300 are gone now

ddreams: only five hundred-ish left from 820 or so

Scarfield: i saw some submits that were 8 hours and counting :O

Zenoscave: Last submit i did was 2... So it got worse

ddreams: mine finished now after 7 hours, with like 70% the last hour

UndercoverToad: dbf i'm also impressed by the number of different colors. All I get is black

Zenoscave: https://www.codingame.com/replay/556006710

Zenoscave: That's a copied bot, no?

DomiKo: UndercoverToad in Russia they like colors

ClockSort: @UndercoverToad were you close on large C or D in the code jam?

ddreams: copied from?

UndercoverToad: i thought it wasn't even necessary

Default avatar.png actualCoderTrevor: Does anyone have the referee and/or brutaltester working with Python? It seems like the referee and my poor little script just aren't communicating. This is the closest I've been able to get: https://imgur.com/jedDOeK

UndercoverToad: on C I realized that the last 1 represents the largest cake

UndercoverToad: from there it's just 2 recursive calls of both sides

UndercoverToad: and a binomial

Zenoscave: Is CJ over!? I just woke up

UndercoverToad: over

Scarfield: (╯°□°)╯︵ ┻━┻

Scarfield: ?

Scarfield: poor zenos table im afraid

TobiasA: i semi-hardcoded my bot to get from around 500th to 42th rank in bronze but it wasn't enough to defeat the boss and now i don't know what to do

ddreams: do you still seed next to your own trees?

Zenoscave: The table has too much stuff on it otherwise...

MSmits: aww screw this i am submitting my new bot :P

Scarfield: gl

dbf: UndercoverToad, raic-2020 could be black also :)

TobiasA: yes

ddreams: I'm on the way to do the same

Zenoscave: MSmits how much better is it?

ddreams: TobiasA then figure out a way to avoid it

ClockSort: @Zenoscave it's probably worse XD

MSmits: locally 65-35

MSmits: not sure otherwise

ddreams: after how many matches?

Zenoscave: After how many matches?

MSmits: 4000

Zenoscave: did you play benches?

Zenoscave: or just your bot?

TobiasA: i've been trying values for the score but it doesn't work

Zenoscave: this game is very rps

MSmits: i did 400 games per game with 5 different bots, each with a different param value

MSmits: so i had them all play against eachother

TobiasA: like to avoid seeding next to mine the tree size has to be greater than 1 but the bot doesn't know that

MSmits: this one came ahead each time

MSmits: and 65% vs old

Zenoscave: Gotcha.

ddreams: almost certainly better then

MSmits: you would think so

ddreams: that kind of local improvement has always given a big improvement in ranking for me

MSmits: won all first 10 anyways, should speed things up

MSmits: but gonna take a break ttyl, hope this submit makes it

ddreams: for sure, gl though :)

MSmits: thanks

Default avatar.png actualCoderTrevor: ... If I compile the starter.cpp file, I can use that with the referee no problem. But the starter.py file is no good. I'm just launching it with "python starter.py" is that wrong? I have python 3.9.0.

Enknable: what errors u get?

UndercoverToad: open a terminal and try that command there

Default avatar.png actualCoderTrevor: https://imgur.com/a/KCeM0iL

UndercoverToad: windows: do you have python as a path variable?

Default avatar.png actualCoderTrevor: Yeah I'm able to launch the script from the command-line

UndercoverToad: flush stdout

UndercoverToad: print(command, flush=True)

Enknable: "?RED?"

Default avatar.png actualCoderTrevor: Hmm okay I'll try that...

ddreams: smart toad

UndercoverToad: i literally have a tshirt that tells you to do that :rofl:

UndercoverToad: https://img.printfection.com/18/3872/BDcI0IOU3xhVh3n/American+Apparel+2102+-+CodinGame+-+Black+%28Front%29.png

Default avatar.png SabertheLost: I win against bossoot 1 in 10 now. Still not good enougth.

ddreams: lol

DomiKo: :joy:

Default avatar.png SabertheLost: I want to play agenst myself. (my ai vs myself)

KelvinAndHubbles: you can, delete the other AI down at players options

ddreams: I guess he means himself as human player

Default avatar.png SabertheLost: yeah :)

ddreams: not too hard to make it

Default avatar.png SabertheLost: I want see if my code is "smarter2

Default avatar.png actualCoderTrevor: Sadly the shirt didn't help :( Also I showed you the error for my own bot the starter.py is just slightly different but seems to be the same root cause: https://imgur.com/F6awU0h

KelvinAndHubbles: ahh, well then just write this game as an actual game

ddreams: need to disable timeouts in the referee, and make a program that asks you for the move

Zenoscave: actualCoderTrevor what referee are you using...

UndercoverToad: that looks like your bot has a problem actualCoderTrevor

UndercoverToad: do you play with bronze rules?

Zenoscave: If it's mine I don't send the action's

Default avatar.png actualCoderTrevor: UndercoverToad this is just the starter.py

ddreams: actualCoderTrevor it has a stack trace there

Zenoscave: which is why the index[0] would fail

ddreams: aha

Default avatar.png actualCoderTrevor: Yes I was able to make it that far with "java -jar -Dleague.level=3 -Dlog4j.configurationFile=log4j2.xml spring-2021-1.0-SNAPSHOT.jar"

ddreams: right, Zenoscave has removed that part of the output

UndercoverToad: you don't send actions Zenoscave?

UndercoverToad: how dare you?

Zenoscave: For time reasons.

ddreams: I saw that he removed it in a later commit

ddreams: I still use an earlier version with the actions

Zenoscave: I'll put a full version up

Zenoscave: my bad

Default avatar.png actualCoderTrevor: wait... the -Dleague.level=3 isn't doing anything

ddreams: nice way to remove the timeouts

DaNinja: actualCoderTrevor how are you running the viewer?

ddreams: I recompiled the entire codingame sdk

DaNinja: this works for me

DaNinja: java -jar ./target/spring-2021-1.0-SNAPSHOT.jar -p1 ../x64/Release/Spring2021-h1.exe -p2 ../x64/Release/Spring2021.exe -l .\logs/game4.json -s -d seed=1009211670800188956

ddreams: DaNinja add "-s"

Default avatar.png actualCoderTrevor: ^

UndercoverToad: he has -s

Default avatar.png actualCoderTrevor: DaNinja it works fine with compiled .exe's but not python scripts

ddreams: UndercoverToad is -Dleague.level=3 the right syntax?

Zenoscave: It doesn't work if you don't generate your own actions.

UndercoverToad: the python starter to be precise

UndercoverToad: yes ddreams

DaNinja: actualCoderTrevor to get the graphics, copy all files in main\resources\view\assets\ to main\resources\view\assets\assets\ then recompile

Default avatar.png actualCoderTrevor: DaNinja thanks I'll try that in a bit. But I think it should work without them(?) I mean it seems to work with an .exe like I said.

Default avatar.png actualCoderTrevor: UndercoverToad to answer your earlier question, I see the same behavior with the version at https://github.com/dreignier/SpringChallenge2021 as well as https://github.com/LSmith-Zenoscave/SpringChallenge2021

ddreams: they have the same removal of output

Zenoscave: I merged dreigniers changes into mine

Zenoscave: It always sends a action count of 0

Zenoscave: I'll probably undo that change but keep the rest

Default avatar.png actualCoderTrevor: Oh I see

Magus: I changed that to make the referee faster :D

Default avatar.png actualCoderTrevor: So this is different from what the IDE is using?

Magus: my code never used the possibleMoes

Magus: *possibleMoves

Default avatar.png actualCoderTrevor: Yes the Python starter code definitely uses that

Default avatar.png actualCoderTrevor: (As does my script)

Zenoscave: I figured Magus. I didn't think people would use mine so heavily before generating possible moves

ddreams: is it you that made the brutaltester?

ddreams: it's cool

jacek: AutomatonNN where are you :(

Zenoscave: jacek lol

Magus: ddreams: Yes I created brutaltester. I'm not the only contributor, eulerscheZahl and some other codingamers made some pull request on it.

ddreams: Nice of you to share

Magus: I wanted to add a feature for the confidence interval in the statistics. But never find the time to code that.

Zenoscave: Based on wilson's CI test?

Zenoscave: I can add that soon if you want

TobiasA: this is the coolest thing i have ever seen :sob:

TobiasA: https://www.youtube.com/watch?v=hQ4ryudP4j8

Zenoscave: https://github.com/LSmith-Zenoscave/SpringChallenge2021/releases/tag/v2

Zenoscave: try this one actualCoderTrevor

Zenoscave: no need for -Dleague.level flag either

Zenoscave: It only allows bronze rules

jacek: TobiasA maybe because you havent seen THIS https://www.youtube.com/watch?v=dQw4w9WgXcQ

DomiKo: jacek :thinking:

DomiKo: that link looks familiar

jacek: youtube is pretty popular site after all

ddreams: QQ domiko

dbdr: MSmits still the same submit?

ddreams: he resubmitted

dbdr: yes, I'm silly, just had a look at the submit time

KelvinAndHubbles: submissions going faster yet?

MSmits: this bot should be better, but not seeing that much evidence of it yet

Zenoscave: jacek HA I have ads so it didn't work

TobiasA: i knew it yet i still clicked

dbdr: why? did not promote?

Astrobytes: wait, your first one didn't make legend?

MSmits: nope

MSmits: got stuck -0.2

Zenoscave: I still listened anyways. I like this song

dbdr: ouch

ddreams: I was sure mine would make it too, since it seemed to beat msmit so much

MSmits: could have waited, but i need to test my new param values

MSmits: and supposedly it has 65% so..

Astrobytes: fair

UndercoverToad: vs yourself where every tiny change has effects

dbdr: did you read the stats right? ;)

MSmits: yes i know UndercoverToad

dbdr: or is it 35%? ;)

MSmits: it's a risk, but i still have the old code. Can just resubmit

MSmits: lol no, i looked right this time :)

MSmits: going afk a bit, dont want to watch this, too stressful :P

ddreams: you use swapped position while testing, I hope

dbdr: we'll look for you

dbdr: and you'll make it

dbdr: I had a long day, lots of frustration. but what an illumination. happy I found it and did not stay in hte mystery of why it barely works

TobiasA: damn rick astley got moves tho

UndercoverToad: did you submit a working version of it already dbdr?

dbdr: yep, it's in :)

ddreams: are you also considering the opponent now euler?

UndercoverToad: no :/

jacek: selfish

UndercoverToad: tried, was on par at best

Default avatar.png CameronWatt: Lol =+ != += how did i do this

Default avatar.png actualCoderTrevor: Zenoscave thanks that gets me a lot farther but I still get a weird "?RED?Player 1 has not provided an action in time.?RED?" on round 56 with my own script. I gotta go for a few minutes but wanted to let you know I tried it. It's definitely an improvement.

Zenoscave: It means ou timed out

Zenoscave: that's on you

ddreams: or you crashed

Numby: I think my code's timing out on garbage collect. When running it locally it can go to 1GB~4GB memory lol

VizGhar: wow o.O

Numby: Like each turn is consistently taking 65ms then I just time out

jacek: your code is garbage eg

ddreams: you have a max of 700mb ram, so perhaps it's killed

CouscousAgha: boss is at 49.63

CouscousAgha: :D

aCat: Nomby in what language you write?

aCat: Numby

aCat: you can prealocate memory and use factories

aCat: or sometimes even turn GC off

Numby: In java, I think my search tree is gobbing up memory. I've been re-rooting my tree if opponent selected a turn that's in the tree

Numby: So I can keep a part of the search tree that's relevant but I guess eventually the parent portion of the tree gets GCed and I time out

Numby: At least that's my theory...

Illedan: :wave:

Astrobytes: hey Ille

ddreams: Hei Ille

UndercoverToad: did you sleep since yesterday Illedan?

Illedan: Didn't do anything on this

Illedan: But I'll start now

Illedan: Tomorrow I don't have to wake up at 7

Enknable: Numby I think you wanna preallocate (pool) your states at the beginning. Then just keep track of which state are in the current tree

dbdr: gogogo Illedan

Illedan: I have a wierd idea. Wanna see if it pays out :)

UndercoverToad: no, C#C#C#

dbdr: cheese?

Zenoscave: rust

Illedan: I tried to fill the board with seeds. Didn't help too much

UndercoverToad: weird, not wierd. every single time you do this ;)

Illedan: I need a full rewrite

Illedan: Yeah that word is weird

dbdr: I thought about it, but must be too slow/expensive

Default avatar.png CameronWatt: hehe

Illedan: Fun though, enemy had no good actions in the last 3 rounds

Illedan: xD

dbdr: game is well balanced, that's why it's hard to eval

Default avatar.png CameronWatt: hrmmmmm

dbdr: got a replay Illedan?

Illedan: I guess you can do it on highly blocked maps?

Illedan: nope

dbdr: possibly, yeah

kovi: but how can you afford it

struct: arent seeds a bit expensive for that?

Illedan: https://www.codingame.com/replay/556057454

Scarfield: shadows galore

Default avatar.png actualCoderTrevor: Zenoscave yeah it seems spamming stderr is a lot more costly on my local machine than in the IDE. I removed the spam and now I was able to see a game to completion. \o/ Thank you so much!!! p.s. I finally realized ?RED? is just so the IDE makes the text red, lol.

Zenoscave: stderr is very costly

Illedan: Anyway, off to code something working. No sleep until euler beaten :nerd:

UndercoverToad: https://www.extremetech.com/wp-content/uploads/2012/09/simpsons-mr-burns-blocks-out-the-sun1-640x353.jpg

Default avatar.png actualCoderTrevor: lol

Default avatar.png Nezinau: Hey, could you give me a hint what to think about in pod racing (coders strike back) when you get to pods colliding stage?

reCurse: Negative triple velocity

UndercoverToad: you don't have to think about collisions until you reach gold

UndercoverToad: finding an efficient path is the most important in lower leagues

MSmits: dont some people ignore collisions until legend?

MSmits: or is that not possible?

Astrobytes: Even in legend, yes

Default avatar.png Nezinau: thx, will work on my angles and boosts then :)

YannT: MSmits plz don't block my legend push :(

MSmits: well if my bot does well vs boss, i might pull him down for you

MSmits: I did for renard earlier. I got to 6-1 pulling boss down, he promoted, then started losing :P

YannT: I have a great winrate vs the boss too, I just can't get to it in a push :/

MSmits: oh ok

YannT: grr I just seem to finish around top10, I'm just if I can't get there I'll pass

MSmits: thats annoying Yannt :(

MSmits: keep submitting

YannT: I'll apply the kovi method until it works I guess :D

MSmits: maybe it pushes your competitors out of the league

MSmits: like me :)

Noyotens: https://www.codingame.com/replay/556066418

cegprakash: I don't know how to test a depth > 1 its so damn hard

Noyotens: the AI broke my code

Noyotens: at 48/138

Noyotens: https://www.codingame.com/replay/556066418

VizGhar: hey C++ devs... BS... how you store nodes? in vector, array, or something else?

Michael_Howard: Submit is definitely getting faster.

Lysk: arrays

struct: array

kovi: YannT: today i have only submitted 2

MSmits: not like you had a choice kovi :)

kovi: valid

dbdr: :D

YannT: kovi: oh man, you're slipping ;)

Default avatar.png CameronWatt: all ur base are belong to us

AllYourTrees: sup

Astrobytes: lol AllYourTrees

AllYourTrees: :wave: :D

Zenoscave: hey astro

Razielwar: top are all in mcts?

Astrobytes: pewpewpew zeno!

Zenoscave: PEWPEWPEW

MSmits: doubt that Razielwar

MSmits: but there might be some

AllYourTrees: aren't they all beam search?

MSmits: many probably

MSmits: but not all

MegiAKAHammatopvcwchat: hey jojo fans

Zenoscave: what's jojo

AllYourTrees: oh shoot... "You reached the limit of plays for a period of time"

AllYourTrees: didn't even know that could happen

Razielwar: ahah

Astrobytes: They lowered the threshold recently, very annoying

reCurse: Just submit instead kekw

AllYourTrees: :scream:

AllYourTrees: does anyone know the time period/game limit?

VizGhar: MSmits going legend :) I'll need one more year probably to get there

Astrobytes: Quite A Few, In A shorter Period Of Time Than Previously

AllYourTrees: damn just what i feared

PRO_G_r_AM_m_ER: almost beat silver with my 50 lines of code that does something :(:)

MSmits: VizGhar this one might again get stuck right under boss =/

VizGhar: how long are you working on solution smits?

MSmits: what do you mean

VizGhar: well 20 hours? 60?

VizGhar: I dedicated huge amount of time... but it seams I only learned how to code in C++ :D

MSmits: ohh, well most of the week when i wasnt working

Lysk: MSmits "Sim perfect", so much trolling ;)

MSmits: :)

BrunoFelthes: What Miyaza means?

Zenoscave: persons name i believe

Magus: Miazaki

Twelve0: name of gold boss?

MSmits: Miyagi?

Magus: https://en.wikipedia.org/wiki/Hayao_Miyazaki

Magus: (the gold boss name)

Zenoscave: sorry msmits...

Scarfield: looks like a solid submit PEWcave

Zenoscave: I have a good w/r against most of league except boss... haven't been able to test much due to timeouts

Zenoscave: Ope lost to smitty

Zenoscave: YW MSmits

MSmits: thanks :P

Zenoscave: Won against boss!! MSmits i'll drop em for you

MSmits: i just lost against boss

Zenoscave: well don't do that

MSmits: i just won against you

Zenoscave: Don't do that either

MSmits: got it

ItsNotABug: I got my first win against boss. But then got beat when i did a new game :/ so im taking the positive

AllYourTrees: i cannot figure out when a good time to complete a tree is

Zenoscave: :D

MSmits: hold your ear against the trunk and wait

MSmits: until it says

MSmits: "You complete me"

AllYourTrees: oh duh yeah i never read that value from game input, ty!

Zenoscave: lol MSmits that's enough weed for one day

DevLorenzo: Hi, has anyone completed level 1 of the coding escape game?

dbdr: how poetic MSmits :)

VizGhar: nice :D

MSmits: I can do poetic :)

Astrobytes: But don't give up the day job just yet :D

MSmits: It'd be poetic if i can finally get out of gold

Zenoscave: what about perl poetry

Astrobytes: ^

MSmits: i saw that

MSmits: whats special about it?

Zenoscave: it's perl. and poetry

Zenoscave: duh

Astrobytes: It's poetry, in perl

MSmits: I see

MSmits: you make good points

Zenoscave: two losses to boss :/

Astrobytes: chomp die

MSmits: damnit

Westicles: The kids these days are into hash poetry

DevLorenzo: I'm stuck to find the number of universes

Westicles: Write a poem that sha256 hashes with the most consecutive eights or something like that

Zenoscave: ... why

MSmits: Zenoscave do you have +50% vs boss?

Scarfield: heightku

MSmits: i have no idea what i have

Zenoscave: no idea either

Zenoscave: too many timeouts in IDE

MSmits: ah yeah

MSmits: I got only 1 match vs boss this submit

Zenoscave: you've got a 67% against me currently

Zenoscave: I've gotten 3

MSmits: top gold is all very close in rating

Zenoscave: Makes it a real barrier

MSmits: yeah i guess so

Scarfield: i think it was ille who said when he finally made it to legend he got straight to no. 40

YannT: I failed around top10

YannT: I'll repush with incremental changes until I make it to legend in a stroke of luck :>

Zenoscave: YannT perhaps wait a bit. so many concurrent commits we just squabble and no one promotes

YannT: it's okay at current pace I'll get there in 2 hours anyway

Zenoscave: lol true

YannT: also I think I have a decent winrate against you, I saw my bot stealing wins here and there :D

YannT: I need your ELO points for the greated good (me going legend), sorry

Zenoscave: NOOOOOOOOO

Zenoscave: not my TrueSkill

YannT: :joy:

DevLorenzo: Is there a way I can find help with the coding game escape game?

Zenoscave: DevLorenzo there's an active competition. That'll be the main focus til monday here

CouscousAgha: i think the only way stopping me from getting to legend is to figure out when to stop cutting trees

MSmits: zeno, i need 0.35 to reach boss.

MSmits: get on it

MSmits: 0.24 now

Zenoscave: I need you to quit beating me. you're most of my losses

MSmits: most of my losses are the green camel

Zenoscave: That's the second most for me

ddreams: Hi Zeno

kovi: told you to stay wit 0.09 diff

MSmits: i had a new version to test

Zenoscave: Once his submit finishes I'll probably have better luck

Zenoscave: .14 below rn

MSmits: on my last submit, when i was around your % I was 2 pts ahead of boss =/

Zenoscave: Yeesh

Zenoscave: What happened/

MSmits: i started losing

Zenoscave: Already doing that

YannT: then just kovi through it man :)

MSmits: well i meant on that submit

MSmits: i am now too yes

ddreams: I have an idea... hmm.. bbl

MSmits: I will try to kovi through

Zenoscave: ddreams, no ideas!

YannT: :D

Zenoscave: only dreams

MSmits: or maybe someone can just kovi boss down to my level

Zenoscave: I'm trying

YannT: it's pretty low right now, it seems to stay between 50 and 49

Twelve0: hahaha

MSmits: well you're wrecking me currently zeno :P

Zenoscave: Sorry msmits....

MSmits: ah well

Zenoscave: Skot_z is my only issue currently

MSmits: yeah i'll be glad when he is gone

Zenoscave: It'll make submit much easier next time for you ;)

MSmits: possibly

YannT: I repushed a version with tree reuse between turns

Zenoscave: the camel has a 82.5% w/r against me

YannT: little hope it does anything good

Zenoscave: < .01 between me and boss...

PRO_G_r_AM_m_ER: now i somethimes beat silver lol :cry:

Zenoscave: I need to shut my mouth. I keep losing when I talk

MSmits: or maybe because you dont use all caps

Zenoscave: PEWPEWPEW

YannT: worse case you'll just land riight next to it and netflix until you get promoted man

TobiasA: i just got to silver league

TobiasA: woooohoooo

MSmits: gj

TobiasA: i am the winner of the entire game

TobiasA: because if you didn't know silver is the new legend

Default avatar.png CameronWatt: lel

ddreams: gz :)

TobiasA: now i don't think i can make it to gold before monday but i'll try to make it to top 500

skotz: sorry zeno :)

Zenoscave: resub smitty?

MSmits: yeah

Zenoscave: any changes?

TobiasA: wait nothing is different?

TobiasA: in silver?

MSmits: lowered beamwidth

Zenoscave: TobiasA no changes after bronze.

YannT: I like how your bot says sim is perfect and then it loses

MSmits: well sim was perfect

YannT: :D

MSmits: the search wasnt though

Zenoscave: what does "perfect" mean here

Astrobytes: It doesn't say search was perfect :P

YannT: "II perfectly simulated this defeat" *explodes*

reCurse: "All went according to plan, I lost"

MSmits: it's just applies all possible actions to current gamestate and my own chosen action. Then keeps that list till next turn and checks against new gamestate

ddreams: muhahaha

MSmits: if one is exactly the same, then the sim is perfect

Zenoscave: Gotcha

reCurse: "My author has purposely programmed me wrong, as a joke"

Zenoscave: lol recurs

Astrobytes: hehehe

YannT: yoo tree reuse seems to actually bring something

YannT: push is doing good

MSmits: you cant reuse them

MSmits: when you complete them they're gone

Zenoscave: Baduntiss

Astrobytes: dearie me :D

YannT: I'm sorry, in your words I meant "sim perfect" MSmits :)

MSmits: :)

Zenoscave: I have a sim perfect prune array

MSmits: oh noes

MSmits: noone is above boss now

YannT: jokes aside I get it, my tree reuse I just pushed is essentially the same thing

YannT: look in child nodes for the move opponent played

YannT: if found, great

MSmits: yeah i use that in boardgames

YannT: if not, sucks :D

dbdr: brutaltester does not support tournaments (more than 2 bots in a 2P game)?

MSmits: it does

MSmits: oh wait

MSmits: no

Zenoscave: dbdr no

MSmits: 3p 4p games though

dbdr: ok

Magus: brutaltester can handle to 4 players

Magus: (if the referee accept 4 players)

MSmits: i looked for that option too

Magus: but there is no "tournament" thing

MSmits: i now manually manage tournament thingy in excel

Magus: But .... I like the idea :D

Magus: maybe after this contests I'll work a little on brutaltester

Magus: I want confidence interval in the output

reCurse: Mortal Tester

Magus: and tournaments seems nice

Counterbalance: grats zeno

dbdr: esp as api benching is almost dead

Zenoscave: YannT don't you dare

YannT: coming through

MSmits: uh oh

Zenoscave: Counterbalance not done yet

YannT: (hopefully)

Counterbalance: no but it's a good sign

MSmits: you would think so

Zenoscave: I feel like that was a jinx

Counterbalance: :]

Zenoscave: -_-

Magus: reCurse: fear my skill to find project names ! My local "training arena" is called Abathur. And my tool to parse/analyse my replays JSON is called Overlord :D

reCurse: I still think Mortal Tester is the most appropriate name to have one with tournament feature

MSmits: Overlord is a good name for a cat

reCurse: ^

Zenoscave: All cats are named that

Magus: my wife refused my names proposals for our cats

Zenoscave: we just don't know it

MSmits: what were they Magus

Zenoscave: Please tell me one was "horse"

Magus: MSmits: Stackoverflow and Jira

MSmits: lol

Magus: According to normal people, they are not good names

Counterbalance: arena tester name suggestion: Battle Royale (wrong author though)

reCurse: According to everyone

Astrobytes: wtf man

Magus: But, I have named one of our rat Mutex

reCurse: I was hoping for something funny

Magus: It's still something, I suppose

Astrobytes: Oh you have rats?

YannT: why do you hate your pets honestly

jacek: and he locked himself in

Astrobytes: Rats are awesome

Magus: I love my pets :D

AntiSquid: https://youtu.be/kAJSA_f1_gY?t=11

YannT: :joy:

Zenoscave: Mutex is good. I like it

MSmits: wait, are these rats pets magus or does your house have issues

reCurse: Why not both

Magus: pet rats

reCurse: Make the best out of a ratty situation

Magus: 8 females, 7 males

jacek: you should name your cat alfador :thinking:

Astrobytes: Wow, you have a whole bunch of rats!

Magus: (actually, 15 rats, 2 cats, 2 parakeets)

YannT: Magus: so that's why you needed thread safety, because of too many concurrent rats?

Astrobytes: Do they get along with the cats or they're not allowed to mix?

reCurse: Must smell nice

Magus: Cats never tried anything with the rats. They sniff them and that's it.

YannT: Zenoscave: sorry mate :/

Magus: Rats want to play with the cats, but the cats don't want :D

Astrobytes: hehehehe

Zenoscave: 9 loss streak :/

MSmits: damn

MSmits: I feel your pain

Zenoscave: Right when Counterbalance said gratz

YannT: took a in on the boss

MSmits: them Dutch people always sucking the fun out of things

Zenoscave: lol MSmits

YannT: bruno is kicking my ass though

Counterbalance: muhaha :grimacing:

Astrobytes: Sucking the smoke out of spliffs you say MSmits

MSmits: that too

Zenoscave: you are the literal devil counter

MSmits: thats the devil, only he can read

Zenoscave: read what?

MSmits: things

Astrobytes: Zeno was getting high, then the Dutch came along and smoked the rest before he had a chance.

MSmits: he oh wait thats literate

Zenoscave: neato

ItsNotABug: Was ~860 in gold. New submit is already top 300 after the first 10% :D

Zenoscave: Zeno doesn't smoke

MSmits: because we took em

Astrobytes: It's metaphorical!

Zenoscave: It was the drink that killed me

YannT: get outta here already BrunoFelthes you're cramping my style :p

Zenoscave: I was hit by a guiness truck

MSmits: I'm on my way back up, hopefully this one has a better shot

Zenoscave: I should eat today

Zenoscave: I need a break

BrunoFelthes: ahuahuahua

ItsNotABug: fack. Another couple games and its dropped me back to ~500

MSmits: or just some day

BrunoFelthes: YannT you push me up

MSmits: nice one BrunoFelthes, grats

MSmits: now get out of our way

YannT: I noticed :p

Ajay.komirishetty: Hey Gang

Zenoscave: see this is when you say gratz. He has finished the submit

YannT: go on, promote, I still have 50% and I4d rather you not be there :D

Zenoscave: gratz BrunoFelthes

ddreams: gz BrunoFelthes

Zenoscave: HAHAHAHAH INSTA KARMA YannT

YannT: ah shit :D

MSmits: 16th now and it's less than 2 points to boss

MSmits: so close all

Zenoscave: MSmits quit it. I am at 95% no beating me

YannT: it's okay, might as well take the L's at 50% and kickass on the tail end of the push

TobiasA: the moment you realize you are the only one from your country in a contest:cry:

MSmits: I am hoping for some more boss battles, only had 2 last time

ddreams: you're number one, TobiasA

MSmits: both losses

JRFerguson: i feel you Tobias

JRFerguson: Uruguay here, always happens to me

TobiasA: i am only one not number one

BrunoFelthes: ahuhauahu, TobiasA, Brazil is a very big country, and we are not so many people here

jacek: uruguay eh https://www.youtube.com/watch?v=4paLVu0gNcQ

Astrobytes: think you're best to wait for a push Zeno

JRFerguson: lol jacek, i knew that Simpson bit

Astrobytes: Otherwise this will be the luckiest submit in the history of today

ddreams: I've lost 1 out of 8 vs. zeno

TobiasA: haha that video

JRFerguson: anyone has any good tips on how to simulate opponent ?

TobiasA: this is my first contest ever

Zenoscave: I'll just wait for push

JRFerguson: i just ignore opponent

TobiasA: in anything

Zenoscave: who keeps losing to bos?

elderlybeginner: i don't even sim my turns or board

Zenoscave: boss*

MSmits: I lost 1 :(

YannT: not me, I went 2-1 against boss

YannT: and now I fell :(

YannT: I blame Bruno

ddreams: 2-1 against boss too

Zenoscave: 6-7 heare

ddreams: Though I think I've never lost against YannT, my bot is his kryptonite

Zenoscave: I know that's not a word. I know I can't spell shush astro

MSmits: are you gonna wait Zenoscave?

Zenoscave: yeah msmits

MSmits: probably good

TobiasA: those numbers in the leaderboard what are they?

Zenoscave: I'm hungry and need food

Zenoscave: Trueskill rank TobiasA

MSmits: ranks and ratings TobiasA

Eglerion: Any tips on how to eval game state?... I tried tons of different things over the last hours but my sim still can't beat my initial submit with hardcoded focus on seed, grow, complete in the middle of the board..

YannT: can all og my kryptonites please promote switfly and clear the way? :p

TobiasA: the decimal ones

TobiasA: with arrow beside it

Zenoscave: yes TobiasA trueskill ratings

ddreams: Trying, YannT :D

elderlybeginner: egl

TobiasA: oh

peerdb: Eglerion i have the same issue :(

Zenoscave: bah

elderlybeginner: Eglerion - fix the main bug :joy:

MSmits: oooh beat boss!

JRFerguson: Eglerion: score, points per tree, points per lvl 3 tree, wait till the end and count sunPoints for each player

JRFerguson: congrats MSmits

MSmits: then lost to the tric :(

elderlybeginner: which means: don't seed in your possible shadow

MSmits: no i mean 1 game lol

MSmits: almost zeno

Ra777: Hello, anyone knows what is the limitation for games per time period in codingame?

AntiSquid: yes

Ra777: do you know what that limit is?

AntiSquid: yes

Default avatar.png bragrejer: 15?

ddreams: I do too

MSmits: can you tell him what the limit is AntiSquid

ddreams: or no

ddreams: you mean in the IDE?

casmith789: he can

MSmits: :P

MSmits: jinx me Counterbalance i am above boss

Counterbalance: gratz

MSmits: :)

MSmits: it really works

MSmits: my next game was loss vs boss

AllYourTrees: oof

elderlybeginner: MSmits, I think I saw you over the boss yesterday :joy:

AllYourTrees: i feel like your next submit will happen

ddreams: he was over boss earlier too

VizGhar: gogo smitsy

dbdr: MSmits was born above the boss

Counterbalance: ra777 look at the bottom of the statement (and next time ask what you want to know, not if someone knows it - these people take everything quite litterally here :))

VizGhar: you dont know how it feels dbdr :D

dbdr: what?

VizGhar: defeat boss... you were always step ahead of boss

Ra777: than you, Counterbalance ;)

dbdr: I know it from previous contests

dbdr: when legend was legend

dbdr: and I was a noob

aCat: oh, Smits on the run ;-)

DomiKo: Do you enjoy that game guys?

YannT: I'm just a few luclky wins away now :)

Astrobytes: when legend was legend. Long live legend.

VizGhar: I'm noob that cant reach legend yet :)

YannT: don't kick me down MSmits plz

VizGhar: My algo is too slow to search enough space and I can't write correct eval

YannT: almost there

VizGhar: YannT are you running BS too?

AllYourTrees: MSmits see i told you

Astrobytes: I never got legend in a contest. That doesn't matter though. What matters is that Legend is supposed to be pretty fking hard to get to.

YannT: MCTS

elderlybeginner: There is a serious battleground at the top :joy:

VizGhar: ah ok :O I probably just don't know how to write fast algos in kotlin (main language for me)

YannT: it boils down to don't no new in your algo

YannT: new is bad

YannT: pre-instanciate everything you can

VizGhar: hmm can you avoid garbage collection?

MSmits: damn, Harry is back

MSmits: VizGhar dont make garbage

ddreams: beating me too

YannT: if you pre-instanciate everything and then don't do new in your algo, you can avoid it mostly

YannT: GC is bad, it'll time you out

Nerchio: VizGhar what YannT said basically, use 1st turn to create most objects you need (like States/Nodes for search) and then never create new again

Nerchio: but even if you optimize everything as best as you can it will probably be 2x slower than C++ lol

VizGhar: this is completely different world then standard app development :D

MSmits: very true

YannT: it is

ClockSort: looks like you did it, @MSmits. congrats

Nerchio: true but maybe thats part of the fun

Astrobytes: Yes.

YannT: also don't do .filter or other things that will instantiate lists

YannT: very bad as well

MSmits: eh ClockSort, last time i was this far ahead in my submit, i was +2 rating vs boss and still lost

YannT: use .forEach and .repeat a lot instead and if (...) return@forEach/repeat

MSmits: at least battles are going fast

VizGhar: I understand the concepts behind all algos, but i like nice and readable code

ddreams: but the previous time I was winning against you, now you're better

YannT: bot coding contests are not the place for clean code :)

YannT: do it dirty

YannT: everything public

Astrobytes: ^

Nerchio: :scream:

VizGhar: too late :D I'll do it next contest

YannT: dirty code is faster :)

XeroOl: if you're in c++, you can just hide the dirty in a function

XeroOl: and let the compiler inline it

VizGhar: slowly getting there...

MSmits: damn harry :(

YannT: it's too crowded for my bot up there :(

AllYourTrees: anyone got advice for how to tell what you did wrong in a game

Astrobytes: If you lost, you need to...

MSmits: look at how completes are spaced

Astrobytes: FIX IT

MSmits: the yshould be mostly in the second half

MSmits: mostly spaced, not all at once, so you keep a steady income

ddreams: cut all your trees

MSmits: spread seeds so you dont shade your own trees

MSmits: sometimes i have a tree at the end of the game

MSmits: uncompleted

ddreams: yeah, was mainly a jab at his nick

Astrobytes: That can help in a tie MSmits

MSmits: but it's richness 1, so takes 4 suns, gives 1 score, not worth it

MSmits: right that too

Chainman: what's the strategy to beat silver boss? I'm still losing

Nerchio: it can be worth it msmits

MSmits: how

MSmits: in the last turn, if the tree gives 1 point

Nerchio: lets say you have 30 sunpoints

Nerchio: -4 you have 26

MSmits: ok

Astrobytes: if you still have more suns than opp but just need a point

Nerchio: equal on points

Nerchio: u have +2 additional

Nerchio: you can throw a seed now

Nerchio: and win a draw

Nerchio: or something

ddreams: ?

MSmits: mmh doesnt make sense Nerchio

ddreams: no

Nerchio: ok

Nerchio: you are right

Astrobytes: see my comment

MSmits: i dont see that happening Astrobytes, how is that possible

MSmits: 3 suns is 1 point

MSmits: you lose 4 points to complete

ddreams: ok, so my first implementation of the idea gives me 100% losses, nice

MSmits: 4 suns

MSmits: so you always lose at least a point

MSmits: and now you also lose a tree

Astrobytes: Yes, it's not likely

MSmits: so how is it ever worth completing a tree that gives 1 point

Nerchio: so how about you have 30 suns, sell 1 tree, you can upgrade now seed to level 1, throw seed for 0 and throw seed for 1

Nerchio: but its like a super corner case

Astrobytes: It would need extreme conditions in my case too

MSmits: why does selling a tree give you a chance to uprade a seed?

MSmits: you can do that anyway

Nerchio: because normally you have 30 sunpoints / 3 = 10 points

MSmits: yes

Nerchio: you will lose a point if you do anything

MSmits: sure

Nerchio: hmm yeah

Nerchio: that probably doesnt work

MSmits: give me 1 exact example,, i dont think it exists

Nerchio: well i coded in my bot to never sell these tbh

Nerchio: when nutrient 1 and richness 1

ddreams: so instead you have 1 extra tree point and 26 sunpoints, giving you one less tree, but 2 suns to play with hmm..

MSmits: last turn, big tree on richness 1, no nutrients, there exists no example where it is good to complete this

ddreams: right, you lose 2 points

ddreams: 2 sunpoints

ddreams: so never good

Nerchio: ok so if u have 32 sunpoints

MSmits: you will still lose 1 point and 1 tree

MSmits: and gain 1 point from complete

Nerchio: true

MSmits: so not worth it

Nerchio: ok you win

Nerchio: i always forget that u sell tree so you have 1 less now :D

dbdr: rhichness 1 is 2 points

MSmits: i dont win , am on loss streak :(

MSmits: richness 2 is 2 points

elderlybeginner: I wonder how you guys will fit in legend now

MSmits: i think

Nerchio: 1: +0 points.

dbdr: ok, I use base 0 :)

Default avatar.png CameronWatt: CoC is so addicting

MSmits: wait nvm

jacek: richness 1 is 0

dbdr: 0 1 and 2

dbdr: and -1 for empty

DomiKo: so -1 base?

Astrobytes: lol

Nerchio: yeah i thought it was weird i actually noticed that richness doesnt equal points in gold or something

dbdr: well, those are just ignored :P

Nerchio: why doesn't it equal points? :P

MSmits: me vs harry 4-9 this hurts

MSmits: well he'll be gone soon

elderlybeginner: Volt is back :joy:

ClockSort: lol msmits why are you still golden

elderlybeginner: for a moment only

MSmits: an existential question I ask myself

dbdr: :popcorn:

Astrobytes: Goldsmits

elderlybeginner: yep, nice to watch that competitive fights :grin:

AntiSquid: because the game is balanced

VizGhar: hmm wasnt Voltmach above boss?

ddreams: for a little while, yes

ddreams: for beating me so much

ddreams: MSmits looking great, jinxy kinxy

MSmits: nooo dont jinx now :P

MSmits: 1 more battle

MSmits: yay!!!!

ItsNotABug: winner

ddreams: nice, gz :)

VizGhar: clap clap

YannT: ah time to repush, way seems to be clear :p

MSmits: there's still harry

MSmits: well not for long

YannT: he'll be gone by the time I get there

MSmits: true

YannT: 10/10 first batch

YannT: good omen :)

MSmits: 4/10 here :)

Chainman: how good is it to try to just place size 3 trees in the middle and not harvest till end of game

MSmits: its bad

ddreams: well, I'm going to resubmit too.. the discussion of richness point made me realize I can't read

BrunoFelthes: bad

Chainman: really?

MSmits: Chainman you shade yourself

YannT: well it's good to go silver, even gold

Chainman: but won't you shade more than yourself potentially

Chainman: Yeah I need to get gold for context haha

MSmits: yes, but with opponent the shade works both ways

YannT: make best trees worth most points in whatever manner, gets you to gold

Chainman: I'm trying just gold worthy strategies

MSmits: with you, it works doubly on yourself

MSmits: so dont shade yourself

MSmits: watch top games, you'll see thats the most important thing they do

YannT: yeah for gold just grow as many trees as you can on richest spots, harvest at the end

YannT: that should do it

MSmits: to get to gold

Chainman: oh

MSmits: not to get to legend

YannT: he wants to get gold no?

Chainman: yes

tobk: dang... my bot was Gold 400, now after resubmit only Gold 750... of course that last submit took 9 hours, so maybe there's just 300 guys who passed me in that time? :-/

MSmits: oh ok

Chainman: I want to get to gold first.

MSmits: tobk it could also be that the guys who were submitting were not at their proper rank

MSmits: it takes time to move up the ladder

tobk: MSmits Yes, that's what I thought after the 9h submit, but in fact I resubmitted since then and ended in pretty much the same spot. Maybe that first submit was just super-lucky...

XeroOl: how are people so far with java

MSmits: ah ok

XeroOl: java seems like it would be a bad language for contests

tobk: XeroOl Why?

ddreams: java has been a bad language for everything since C# came out :p

XeroOl: because you're forced to deal with the memory allocation stuff

XeroOl: they don't have structs, so the moment you try to abstract anything, your code runs slow

Astrobytes: You have to be clever about it

YannT: java is a decent language for contests

YannT: you just can't do whatever you want :)

MSmits: XeroOl you make all your objects in the first 1 second

XeroOl: unless you start by just allocating giant arrays of primitives

XeroOl: but that sounds painful

XeroOl: you might as well use C

MSmits: thats normal

ddreams: you can allocate everything you need

MSmits: I do this in C++ and C# also

YannT: no you don't do it for priimitives

ddreams: initially

Astrobytes: JVM warmup

YannT: primitives are already cacched in the VM

ItsNotABug: My bots capable of beating msmits and gold boss. But it still ranked 360th in gold :/ Too inconsistent to rank high :(

Astrobytes: allocate a bunch of objects instead

MSmits: ItsNotABug capable of beating msmits or capable of beating him 50+ out of 100

XeroOl: that just seems not ideal

XeroOl: hmm

YannT: "sim perfect"

MSmits: lol

MSmits: it makes the creature look kind of arrogant doesnt it

Astrobytes: Do some calculations in the first second. Helps with JVM warmup.

YannT: ddreams: plz promote I have a horrible winrate vs you

ddreams: Trying :p

ddreams: you can just push me over, and then resubmit !

ddreams: I'm at 49.13 and boss at 49.25 :p

ddreams: If only Harry would stop beating me down

Astrobytes: Submits slowed down again?

MSmits: harry is annoying\

theycallmedavid: How does the response time restriction work? I'm measuring my response and in the worst case it is 250+ms, but only once in the middle, and multiple times it is a bit over 100ms. It looks like it is not a problem.

YannT: ddreams: grah I was hoping you'd get pushed you were equal to t he boss :(

YannT: why u stiill here man

ddreams: Harry is at 97% tho

Nerchio: theycallmedavid start calculating time after first input and the end before output

ddreams: Harry is gone legendary

theycallmedavid: That is how I measure

theycallmedavid: Wait, no

theycallmedavid: Ok

ddreams: you timed before first read?

theycallmedavid: Yes

ddreams: then you time the opponent too

theycallmedavid: I see

theycallmedavid: Now it is much better

theycallmedavid: Thank you

ddreams: chat is helpful

Chainman: ahhh I can't beat silver boss

ddreams: post a replay, chainguy

Chainman: https://www.codingame.com/replay/556171635

ZarthaxX: gz MSmits!!!

AllYourTrees: did you get it???

ddreams: Chainman try to spend more of your sun in the middle game

MSmits: thanks ZarthaxX :)

AllYourTrees: gz MSmits

MSmits: ye i got it finally

MSmits: 3 submits where i went above boss, only last time i stayed

Astrobytes: grats MSmits!

Chainman: okay I"ll try

Default avatar.png Dakkad: std.error is behaving odly for me for the first time... any known problem/bug?

MSmits: thanks astro

Astrobytes: Please state the nature of your stderr emergency Dakkad

Default avatar.png Dakkad: I wouldn,t say emergency, but here goes:

Default avatar.png Dakkad: I have a console.error('lol') on line 502 that shows up on every round, except for the round where line 503 throws an exception.

Default avatar.png Dakkad: I usually can rely on the previous line of code to debug the following line of code.

ddreams: flush?

ddreams: dunno how js stderr works

Astrobytes: Flush issue I think yes

Default avatar.png Dakkad: This time, when I get this exception thrown on line 503, no prior console.error() shows up

Default avatar.png Dakkad: What is a flush issue :-) (something I can google?)

ddreams: often output is buffered for performance reasons

ddreams: flush means to make sure it's sent to the destination

Default avatar.png Dakkad: What can I do about this problem?

ddreams: google

Astrobytes: What are you coding Dakkad?

ddreams: or wait until a js-person with knowledge chimes in

Westicles: How does printing lol give you more information than it not printing?

Default avatar.png Dakkad: It's just to simplify the conversation with an irrelevant std.error Westicles.

Chainman: wooo finally won 135-124

Default avatar.png Dakkad: i.e. this guarantees there's no error in my console.error() :p

Westicles: Oh, well the other option is the error was on line 502

Default avatar.png Dakkad: @astrobytes, I'm coding the spring challenge 2021 in javascript

Astrobytes: Are you coding for the contest or something else Dakkad?

Astrobytes: Right, gotcha

Zenoscave: I got pushed!!!!

Astrobytes: Is there a relevant code snippet (NOT full code) you could post?

Twelve0: congrats

ddreams: Nice, gz Zeno

Astrobytes: PEWPEWPEW Leg End!

Zenoscave: Thanks :)

elderlybeginner: I think I'm loosing more when there are richness 0 cells. Any idea how to modify action scoring taking into account that factor?

Default avatar.png Dakkad: @astrobytes: http://chat.codingame.com/pastebin/91447232-ffa9-4ba2-a7a2-79b4adf27011

ddreams: boss at 48.90, I'm at 48.85 :p

ymoukhli: congrats twelve

Twelve0: not yet

ddreams: don't jinx it ;)

YannT: I'm coming please be nice

ymoukhli: spoke too soon

Counterbalance: Dakkad what's the exception message?

Default avatar.png Dakkad: TypeError: Cannot read property 'size' of undefined

Counterbalance: f.tree is undefined

Default avatar.png Dakkad: Yes yes, that's obvious :-)

Twelve0: thank you anyway ymoukhli

Default avatar.png Dakkad: I know what the error means, but I'm trying to use console.error() to find out what object it receives

Astrobytes: I hope that ` is a typo :P

YannT: ddreams my dude, don't knock me down

Default avatar.png Dakkad: it was me trying to format for discored :-)

Default avatar.png Dakkad: There are no backticks in the actual code

Astrobytes: :D

Twelve0: sorry YannT

Westicles: that ` is spider poop on your screen

Default avatar.png Dakkad: every forest object has had a tree in this array for hundreds of runs... I messed up something about the array, but can't find out since console.error() doesn't work on that specific round.... :-(

YannT: it's okay I still have 50% and youi guys are gone soon :D

Astrobytes: It's on the other side of the room now Westicles

YannT: I seem to have a decent winrate on Valphyr too, that helps

Zenoscave: Man this is a dog fight in legend

Westicles: Oh good Astrobytes. Probably laying eggs

Zenoscave: Who was gold boss?

ddreams: Bernard_Lowe

Astrobytes: Westicles: Probably waiting to lay eggs in my ears or hair I'd say.

ddreams: lol, both me and the boss have 48.94

Astrobytes: Cats will get it if it dares to come down from up there though.

YannT: ahh finally

YannT: bye ddreams

YannT: won't miss ya :p

Astrobytes: nice one YannT

Chainman: I'm not always winning against silver boss :(

ddreams: yay

Counterbalance: Dakkad ok, because that error is an uncaught exception, the process exits and stdout/stderr are not flushed. You can try wrapping the code in a 'try {} catch () {}'

Chainman: I'll submit to see if it is good enough to win 50% against boss

ddreams: 10 losses 3 wins in legend

ddreams: well, time to submit a better bot

Chainman: :flushed:

Chainman: I don't think my bot is going to get in gold with this submit

Chainman: But I might be closer to top of silver

Default avatar.png Dakkad: Hey @astrobytes, @counterbalance. I removed all my console.error() and kept the one I absolutely needed to debug this, and they now shows up

Default avatar.png Dakkad: as if I had been logging too much for the following rounds to keep on logging

Default avatar.png Dakkad: I tried with a try catch as well (with all the console.error()s and it didn't work)

Astrobytes: Ah. If you see a ... at some point, you logged too much to stderr

Astrobytes: It is limited

Default avatar.png Dakkad: Yeah, that was the case, but I thought this "max" was cleared for each round

Default avatar.png Dakkad: vSolved! ¯\_(ツ)_/¯

ddreams: it's not cleared for each round?

Chainman: https://www.codingame.com/replay/556191535 He's on top in silver, he is just putting all seeds as closest to middle in the game. But he also uses sun points better mid game.

Chainman: He is harvesting quite early

ClockSort: i've been stuck at Gold 8 to 15 for the past day. That's enough. I'm going for it with a new submit, wish me luck! New feature: reuse search tree from previous turn as a start for the next search.

ddreams: Chainman I think you have too many level 3 trees

Zenoscave: good luck ClockSort

ddreams: I should probably have submitted this bot earlier

MSmits: grats Zenoscave

ddreams: 116 in legend now

Zenoscave: thanks MSmits

Chainman: wow nice

Zenoscave: doing gradient descent optimization on constants now

Zenoscave: Param tuning

struct: grats both

Astrobytes: nice

DomiKo: Opponent fitting would be better

Zenoscave: DomiKo what do you mean by opponent fitting?

DomiKo: Choose one player and fit params to beat him and upset him: D

Zenoscave: Lol fair

Zenoscave: I'm too low for that to have much impact though

Chainman: hmmm okay yeah with that change ddreams I seem to beat ksaw at least once of 2.

Chainman: He is still beating me, but I win sometimes now.

DomiKo: Itf funny how even my bot know that top player won in day 12 :D

Chainman: He takes so much of board throwing seeds.

Chainman: I was trying to only throw seeds 1 at a time, and only do it 2 distance from another tree.

Astrobytes: Oh, YannT, I thought you promoted earlier, my mistake :(

YannT: no I've bneen knocking on the door

Astrobytes: You'll enter soon I'm sure

YannT: been above the boss, it's really down to good/bad luck at this point

Astrobytes: Always

Chainman: 29 in silver, I don't know if this bot will promote

Chainman: I have a better version to submit already though so I think I'll get in gold.

Astrobytes: Don't give up Chainman

Westicles: You can do it chinaman

KelvinAndHubbles: found a wee bit of difficulty getting out of Silver for some reason though, hit top 100 4 days ago, and haven't moved much despite changes, probably just my botched code :/

Chainman: chinaman lol

Chainman: :joy:

YannT: I'mma kovi this crap

YannT: tune constant by .05 and resubmit until legend

Chainman: cool

Chainman: coming for bossooot

cegprakash: depth = 1 eval doesn't work for depth = 5 and depth = 5 eval doesn't work for depth = 1 how am I supposed to debug this eval

reCurse: "kovi this crap" that's a new one

Queuebee: does anyone have a rough max amount of actions to make by a player in any given turn?

KelvinAndHubbles: 3 or 4 usually works for my bot

Chainman: 4 people in my way to beat boss

Queuebee: I meant what could be the possible max so i can set a Action[size] for that but nvm ill just use list lol

Numby: Does code in the IDE get throttled if you run it a bunch of times? I've noticed I'm getting time out if I run it a bunch but after taking a pause it runs fine (using replay in same conditions between runs)

Chainman: wait when you are one spot behind boss you don't battle him?

Chainman: oh I passed the boss

Chainman: but I didn't atually have an battles with him

ddreams: as long as you are ahead with 100% completed games you'll promote

Chainman: crap I'm swapping places with him

Chainman: I'm 2nd to him again

Chainman: okay now I'm above by about .5 trueskill

Chainman: that should be good

Chainman: bossoot in java

ClockSort: my MCTS just loves cutting trees too much. Around turn 15 it might cut everything if it thinks the opponent can't catch up. Any advice?

BrunoFelthes: heuristics, fix it to not cut

Queuebee: Your MCTS can tell you what it thinks? O_o

ClockSort: here's an example. the percentage in Message is its chance of winning. It thinks 90% chance of winning after the forest is gone. https://www.codingame.com/share-replay/556211617

Queuebee: So why does it think that ^^

ClockSort: it doesn't see that the opponent can hold trees for a very long time afterward. in the random rollouts, the opponent cuts randomly sooner than the very end of the game..

BrunoFelthes: the of in your mesage is the number of rollouts?

ddreams: more sims or prune the actions perhaps?

ClockSort: @bruno it's the rollouts for the chosen move

mybk: are you adding the sunPoints/3 when comparing the win/loose ?

BrunoFelthes: i have a rule that i always have at least 3 tree 3 until turn 18...

ClockSort: @mybk yes

BrunoFelthes: it works for me

mybk: ok

ClockSort: @BrunoFelthes 3 large trees?

BrunoFelthes: yes...

ClockSort: that would definitely shake things up.

ClockSort: my bot chops way sooner haha

Chainman: how could I get started with MCTS? hmmm

ClockSort: read wiki article

ClockSort: it was a long learning process for me

Chainman: how long have you been doing it?

ClockSort: i started at the start of this contest and it took 3 days to get it working enough to get out of bronze

ClockSort: because i'm a noob :D

Chainman: Where are you now?

Chainman: I am too

ClockSort: Gold #23

BrunoFelthes: try first only monte carlo... than bean search, then MCTS, I think that this order is nice

Chainman: I tried a beam search but scratched it, so I can advance with heuristics.

ClockSort: i think search algs are the best way to improve as a coder

Chainman: finally promoted to gold wooot

ddreams: not bad

Chainman: lol 1404, I'm in the bottom

ddreams: still gold

YannT: I think I've got it :)

Chainman: maybe I'll go back to my search algo now.

YannT: fixed another bug

aangairbender: my mcts with duct cant beat my beam search

aangairbender: sad

Chainman: yannT about to go to legend

BrunoFelthes: until wednesday, I had a bug at my code because I was using a signed byte to store the score... So, my bot was tring to do a max of 127 points...

ClockSort: lol

YannT: maybe, no jinx plz :D

Chainman: Okay so this boss is in python3.

ZarthaxX: F BrunoFelthes

KelvinAndHubbles: I have positive winrate against like everyone in the top 50, but randomly losing to neesh like 1700/1950 rated in silver :/

ddreams: sometimes it's a bit of rock/paper/scissors

KelvinAndHubbles: yea, I have a problem with the "hoarders" as I call them who don't sack until the end. It's kinda a coinflip in those games

Stormalix: how do i even begin with coding a bot

ClockSort: anyone else get random "-1" results? like 1 in 100 games?

KelvinAndHubbles: yea, that means timeout error or some error ClockSort

ClockSort: i'm wondering if it's timeout or crash, any way to tell?

KelvinAndHubbles: you can send to IDe, but I've had it change a million times on me

ClockSort: i load in IDE and no crash or timeout.

KelvinAndHubbles: yea, either you, opponent have random or Codingame is just playing tricks with your head

ddreams: if you are usually far away from the timeout, it's probably a crash

mybk: timeout -> maybe memory issue

ddreams: if you're sometimes around 100ms normally, probably timeout

pmor: the memory thing has bitten me a few times.

mybk: me too

pmor: I now have my own allocator that I use for most of my containers

mybk: what do you mean ?

YannT: I think I've got this this time :D

pmor: i get a block of memory from the system, and then I have my own memory management of that block

pmor: you can pass the allcoator into vector, unordered_map, etc

mybk: ah cool, advanced tricks, cool, maybe I need to learn c++ (properly) for the next context, right know I am using java

pmor: yeah, this is a c++ thing. Java is a whole other beast with the GC

mybk: yeah it's a big problem

Zandy156: I enjoy making fast heuristic bots work as well as I can.

mybk: yeah I missed that, I enjoy that also, next context I will spend more time doing heuristics

Zandy156: I barely got top 2k in the potion contest because of it.

Zandy156: hopefully the next one isn't like that one

cegprakash: is 5 a good seed for srand?

Zandy156: are there bad seeds?

cegprakash: no idea

pmor: there isn't a difference in what seed you use.

pmor: if you use the same seed though, you will have the same results come through rand

pmor: i don't think anyone here is able to take advantage of that

casmith789: you probably want to use the same seed if you want to debug the bot when it loses to see what is going on

pmor: yeah, its a pain if you use a changing seed. I keep to one

Littleyounes: Codingame c'est une dinguerie quand meme

Littleyounes: sous coté

pmor: oui

somnek: xqcL

Pick8chu: does anyone uses brutaltester on windows with javascript?

Pick8chu: I've been working on it since yesterday still hasn't work

Pick8chu: cause of the readline

ClockSort: what kind of buffer against the 100ms are you guys using?

ClockSort: I'm on 90ms and I'm not sure if that's the cause of my "failure to provide a move in time"

ddreams: gz YannT

ddreams: now you can come push me up again ;)

pmor: I currently have 70 due to my getvalidactions call can take over 20ms

pmor: I'm adding in pruning to reduce the cost, which should allow me to up it

YannT: ddreams: I'm in front of you tho :p

ddreams: hehe, three spots, perfect for fighting

ddreams: well, I guess we both are not in submission, so

ddreams: and I'm heading to sleep

Wontonimo: ClockSort, you don't need more than 1/2ms of buffer. Make sure you start your timer after the first line of input you read

reCurse: There are server hiccups you can hardly prevent

JohnCM: all right, reached gold!

ClockSort: @Wontonimo that's interesting, i'm starting it too late -- at the start of my searching.

Default avatar.png Cjx_1: gj

Pick8chu: does anyone know how to execute js file with spider monkey?

JohnCM: is the gold bot a heuristic bot?

Zandy156: I think so

JohnCM: it's a huge upgrade over the silver one. i'm losing it by 60 pts

ClockSort: recurse so this might not be my fault? https://www.codingame.com/replay/556304651

reCurse: I don't know it's hard to tell

reCurse: If you print the time taken in debug and it's always the same time

reCurse: And on a random turn it jumps to +15-20ms

reCurse: Then yes that's it

JohnCM: the gold bot is blocking all my trees, no wonder my pts so little

Kellthazar: its pretty well implemented

Zandy156: that's its main strategy

ClockSort: Gold #2, COME ON COME ON

Wontonimo: go ClockSort go!

Default avatar.png Cjx_1: gogogo :D

MyCCODE: Can you do aa favor to subscribe to my channel - https://www.youtube.com/channel/UCEHp4w8fTDoOcRUwG8qTypQ

Wontonimo: no

Wontonimo: (secretly opens up channel and looks at all videos)

Wontonimo: Cool, unity dev. Did you compete in this challenge using C#?

MyCCODE: Yes, sure

Wontonimo: I don't see you on the leaderboard. You know there is a competition going on right now right?

Default avatar.png NotSureWhyThisWorks: its been 5 days of learning c++ and my beam search can finally beat my python heuristics bot.

cegprakash: NotSureWhyThisWorks awesome

Wontonimo: congrats!

cegprakash: but are u sure why it works NotSureWhyThisWorks

Default avatar.png NotSureWhyThisWorks: I'm so happy lmao

Default avatar.png NotSureWhyThisWorks: Nah not sure still

Wontonimo: yeah, it's a great feeling!

cegprakash: NotSureWhyThisWorks NotSureWhyThisWorks

Lokmene: any escape room

cegprakash: lol

Lokmene: ??

Default avatar.png NotSureWhyThisWorks: wontonimo did your mcts get you into legend?

Wontonimo: no, i couldn't get it working as well as my MC-1ply bot which got me into legend.

Default avatar.png NotSureWhyThisWorks: still impressive

Wontonimo: i think the MCTS i wrote would probably rank about 600 gold, maybe

Default avatar.png NotSureWhyThisWorks: I actually don't mind the idea of a MC-1ply bot I didn't know that existed

Default avatar.png NotSureWhyThisWorks: how many rollouts can you get within a single turn?

Wontonimo: i don't know if it has an official name, but that's a name that LazyMammal came up with, so i'm using it

Default avatar.png NotSureWhyThisWorks: fair enough

Wontonimo: around 3k*24/(24-day)

Lokmene: https://escape.codingame.com/game-session/e8H-807-aUJ-l1R

Default avatar.png NotSureWhyThisWorks: not bad

Wontonimo: I think that's pretty low and with some profiling I should get that up to 10k if I put some sweat into it

Default avatar.png NotSureWhyThisWorks: are you using c++?

Wontonimo: yeah c++. btw, everyones lang is posted beside their bot.

Default avatar.png NotSureWhyThisWorks: ok true

Anti-Matter: Just wondering but for the games we have to write everything in the one file, yeah? we don't have access to multiple files

Numby: Yeah but it can get a little unwieldy to do this locally. I used a python script to stitch all my files together into one

Anti-Matter: ooo wait you can code on your PC and then upload to codingame?

Whiskee: yeah Codingame Sync is a nice extension you can use

Whiskee: every time I build on my IDE it lanches a script that merges all my .cs files into the one that's synced here

Anti-Matter: naisu

mnechromancer: Hey, just wanted to say to everybody in chat that you guys are awesome. This is my first bot-coding competition and I'm working a lot more on it than I thought I would, and my last version made it into silver! Couldn't have done it without chat's help, and I still have so much to learn :grin:

Whiskee: the only part that's a little weird is that I have to put all using statements inside the namespace, because they can't be at the top level on a merged file :)

Anti-Matter: hmm, can you test the code you wrote locally or do you have to upload it first

Default avatar.png Cjx_1: <3 I would echo mnecho

Wontonimo: hope to see you around after the competition mnechromancer , there's lots of other challenges here between competitions

Whiskee: always nice to see some enthusiasm!

Whiskee: Anti-Matter there are ways to do that, they were discussing it earlier

Kellthazar: Anti-Matter you can use the source code of the game that CG provided on github.

Zaphus: finally sorted out why my brutaltester was failing every time. turns out the game referee was not supplying any possible moves on the first turn, causing my code to return nothing. Doesnt happen in the real game but multiple referees I tried all had the same issue. Just forced a wait on turns without moves and it works... I think. All the starters fail for the same reason :-(

Pick8chu: Wait

Pick8chu: so brutaltester is not working because of the refrees?

Numby: I feel like as soon as I solve my issue with unbound memory growth and stop timing out I'm gonna jump to top gold: https://www.codingame.com/replay/556323585

Zaphus: for me, yes - I tried the referee alone and it still failed with starter bots

Pick8chu: well mine doesn't work neither

Pick8chu: It's so frustrating

Zaphus: put a check in your bot for a turn with no possible turns supplied, and return "WAIT" on that one

Zaphus: see if it helps

Pick8chu: wdym?

Pick8chu: for starters, i always return WAIT

Enknable: Numby are you use recursion?

Pick8chu: but non of them works

Numby: I think the issue is I either go over the memory limit or garbage collections trips me up. When I run my bot locally it never not provides a turn

Zaphus: do you return "WAIT" - or do you return command[0] ?

FrancoisB: Anyone using rust-sourcebundler?

My output file does not contain the dependencies

Numby: No recursion but my search tree might be too big

Enknable: are you timing your game?

Numby: I'm thinking of trying a pool of nodes and reusing

Pick8chu: string action = get<0>(possible_actions[0]) + " " + to_string(get<1>(possible_actions[0])) + " " + to_string(get<2>(possible_actions[0])); // default


Pick8chu: this is what i return

Numby: Yeah, you can see I print out the time and it's consistently at 80-81 ms (limited at 80)

Pick8chu: so it should be "wait" since the first one is always WAIT

Zaphus: thats the problem, there are no possible actions - just force "WAIT" and see what happens

Pick8chu: Oh

Pick8chu: there's no possible actuons??

Numby: so it doesnt seem there's turn variability causing it go over. Imo it's because I keep allocating objects and eventually GC cleans them up and I time out on that turn

Zaphus: again, for me on windows this is what is happeneing, looks like a referee bug but that change fixed it for me

Pick8chu: Oh you're right

Pick8chu: they don't have any possible actions

Kellthazar: How deep are your simulations? 2 ~ 3 days?

Zaphus: if it is happening on other turns then it makes the referee useless - thats the next thing I want to check

Enknable: after your first stdin, start = chrono:time, then after every iteration check that (chrono:time.now < 75)

Numby: I added depth limit of 4 simultaneous actions

Enknable: then at least you won't timeout

Enknable: or w/e # works

Kellthazar: Hmm

Pick8chu: so i should code without having possible actuons?

Numby: Yeah I'm already doing timing myself after first input (System.nanoTime() in java equivalent_

Enknable: ok ok

Enknable: :)

Zaphus: @pick8chu looks like it only happens once from a quick check

Pick8chu: only once

ClockSort: what is the memory limit for spring challenge?

Wontonimo: the same

Wontonimo: it's in the faq ... what's that link?

Wontonimo: https://www.codingame.com/faq

ClockSort: 768mb

ClockSort: well that's a problem, i'm using 2gb. :D

Pick8chu: now my replay board is not shown lol

Pick8chu: says demo.js file is not there

pmor: I wish CG would tell you why you timed out...the memory issue plagued me in previous challenges.

pmor: and I believe I was getting a time out from a stackoverflow

pmor: for this challeng

Wontonimo: what is taking up all that space ClockSort?

pmor: at least I'm able to tell when a sigv happens

ClockSort: @wontonimo my brain

Wontonimo: well, it's swollen cuz it needs to fit in 768mb

ClockSort: working on it

ClockSort: ok, submitting a new bot with a smaller brain. thanks for the help

Numby: ClockSort i'm rooting for you I'm struggling with the same exact issue lol. Will need a bit longer to fix though

ClockSort: i sat on Gold #1 but the bot is better. nobody knows my pain :joy:

Wontonimo: i've been there. not on a contest though

pmor: at least youre gold ...

Wontonimo: can anyone tell me the GoldBoss score ?

mybk: 48

mybk: 48.43

Wontonimo: you curb stomped it reCurse ... geez man, go easy.

struct: holy

k4ng0u: http://cgstats.magusgeek.com/app/spring-challenge-2021/reCurse no mercy xD

JohnCM: recurse to legend soon

JohnCM: clocksort, you just need to sit your bot there, eventually some pro programs will push the elo of the bot down and you will rise

mybk: to top 10 soon ;)

struct: seems like rank 1 bot to me

JohnCM: yea it's like owning everyone

Wontonimo: HAHA

Wontonimo: there is a certain satisfaction from those kinds of submits

struct: his bot plays different from top from what I can tell at first

KelvinAndHubbles: should I do anything if I'm 1st, but not beating boss?

KelvinAndHubbles: Ik Smetly just kind of waited for two hours and he was above

mybk: yeah, ameliorate your bot, play against yourself, if you win 8 from 10 battles => submit

Wontonimo: i waited about 18 hours and I got moved from 35th into next league. It's a gamble though. it could be that you get pushed the opposite way

struct: Protect your bots if you are in legend

struct: duck

JRFerguson: my bot is afraid

CouscousAgha: yo who spawned the legend boss in gold?

struct: lol

struct: 100% win rate on legend?

struct: any bets?

CouscousAgha: hard

struct: its 50/50

casmith789: definitely not

k4ng0u: one loss against the gold boss!

k4ng0u: it's not invincible anymore :D

struct: time do put it in the bin

struct: to*

CouscousAgha: top 24 already

struct: uff it didnt play vs me

struct: im safe

KelvinAndHubbles: problem with it beating my bot 80% of the time is I don't know if thats just countering my bot or actually good

CouscousAgha: bro

CouscousAgha: this bot is madness

CouscousAgha: lmao i imagine the look on top legends' faces

CouscousAgha: whent hey wake up to this

struct: Imagine going to sleep and wake up to this :'(

CouscousAgha: god of ubisoft

CouscousAgha: imagine if it's made by an ubisoft hardcore dev

CouscousAgha: reCurse go easy on people

Zandy156: wow

Counterbalance: a non committal submit, immediately to rank 1

JRFerguson: insane

mybk: what do you think recurse use like algorithm ?

pmor: skynet

JRFerguson: saelyos beat him

struct: I think cg can save the servers and end the contest

Zandy156: its like its day 1 of contest and one person actually tried.

VincentBab: insane xD

JohnCM: recurse has won plenty of previous competitions. this one should be easy for him

JohnCM: but the sun shifting is really difficult to code for

CouscousAgha: theyw ere like meh i will do this in one saturday afternoon and submit it

struct: japan is already reacting to recurse :(

Wontonimo: this has reminded me it's high time I code my NN harness for CG competitions

struct: This reminded me that is time for me to stop coding

mybk: isn't the limitation for NN in CG too high ? 100ms/100kb file size ?

struct: yes

struct: there are plenty of NNs though

mybk: so how we can do NN

struct: compress the weights

UndercoverToad: reCurse wtf

struct: toad woke up

dbdr: yeah, just saw :D

struct: Throw the towel

Marchete: +5 points euler

Counterbalance: 6 point lead

dbdr: gg reCurse

Marchete: http://cgstats.magusgeek.com/app/spring-challenge-2021/reCurse

pmor: you missed the carnage as his bot took the throne

Zenoscave: I broke my bot

struct: Everyone had alarm to when recurs e submited

struct: lol

UndercoverToad: let me guess: the almighty NN

struct: I would say yes

Wontonimo: and alphaZero enters the battlefield

Zenoscave: cool Good to know My eval is super fragile

UndercoverToad: so he has a winrate as high as struct when bronze opened?

struct: lower

struct: i had 100%

Zenoscave: slightly lower

dbdr: noob

dbdr: ;)

ZarthaxX: gg lol

Wontonimo: well, i don't think truskill really works for more than 8 points difference no matter how one-sided the battles are

Marchete: you lose points by winning

struct: yeah

Pick8chu: is the refree working now?

Pick8chu: I'm trying to code possible_actions but it's tricky

Zenoscave: I have the same losses as recurse this submite

Zenoscave: so far

Zenoscave: just less wins

struct: he lost 1 match in gold

Zenoscave: Jesus

struct: vs the boss

Zenoscave: Nevermind

struct: https://www.codingame.com/replay/556355349

UndercoverToad: that's why he already submitted today: was scared of the boss

Zenoscave: however fixing my coeffs jumped 50 places so far

Marchete: was scared of CG servers going slow

Zenoscave: Is it very time dependant his solution? or is it nearly instant

Marchete: I'll wait his PM :D

UndercoverToad: play him vs him to see how fast it goes

Marchete: I like to read PM a lot

Marchete: they are interesting

UndercoverToad: the only thing that can stop him now is CG seeing obfuscation in his NN encoding

Marchete: but are you sure is NN?

Zenoscave: They wouldn't do that would they?

Marchete: It's hard to do it here

UndercoverToad: of course i'm not sure

Marchete: too many different bits

Marchete: with one hot encoding

Zenoscave: I'm sure it's just weights and they've stood on the fact of weights are fine i thought

Marchete: 37*4 *2

Marchete: just trees

UndercoverToad: 37 for richness 37 for owner 37*4 for size

UndercoverToad: plus points and suns

kovi: that hurt...

kovi: but better now than tomorrow

Marchete: I'd say owner*2

struct: Just wait

Wontonimo: i'd instead do 9 for richness, 9 for owner, 9*4 for size and convolve it ...but i haven't tried NN on CG, so i'll let you know how it goes

struct: Ive been saving the bot that I made during testing for this

Marchete: convolve seems good here

Marchete: because of rotations and such

Marchete: and it needs less weight but more CPU time

Counterbalance: isn't nn nearly instantaneous once trained? it's just fixed number of multiplications and additions.. his bot seemed to squeeze every millisecond out of each turn..

Zenoscave: maybe training inline on top of?

Marchete: convolutional isn't

Marchete: convolutional is like taking a point and its neighbours

Marchete: and calculate

kovi: its still mts (duct?)

Wontonimo: *caugh* alphaZero *caugh*

Marchete: so guess how many calcs

kovi: (i guess)

kovi: mcts

Marchete: robosta_c also has very good A0 bots around there

Marchete: it shouldn't be that easy to pull it a working NN here (due to restrictions)

Marchete: CG*

dbdr: local training

Marchete: I mean size restrictions

Marchete: and CPU time

Counterbalance: it's probably just a search with 10 million sims :)

ZarthaxX: LOL

dbdr: training is CPU intensive

struct: heuristics maybe?

Wontonimo: if (losing) { win }

Wontonimo: i should have thought of that

mybk: System.makeMeWin()

mybk: No SAO Fun here ?

Wontonimo: well reCurse, if you are listening, Good on you! Really, cheers for showing what can be.

Smelty: when's the contest over

struct: now

Smelty: ah 1 day

Smelty: hi mr. str0ct

dbdr: lol struct, was gonna say the same :)

Smelty: lol

Smelty: hi mr mod

struct: hi Smelty

Smelty: 7 mods in a room what do they do https://snipboard.io/7zJ2WV.jpg

Smelty: hi

UndercoverToad: they intimidate

Kellthazar: trying to simplify my evaluation heuristc...

Kellthazar: my bot stop to plant seeds after a while. XD

Hoyer: I keep getting `An error occurred (#407): "You reached the limit of plays for a period of time."`

Hoyer: whats the limit

Wontonimo: how many did you do?

Hoyer: idk a few, I was adjusting parameters

struct: its very low atm

Wontonimo: (joke aside, i think you only need to wait 5 min)

struct: they lowered it

Wontonimo: (says in deeper voice) only 5 min

Wontonimo: oh, you mean numerically ... okay

UndercoverToad: "atm" these restrictions will remain the way they are

Default avatar.png ALDERS0N: you guys are so annoying

struct: thanks

Zenoscave: :+1:

Default avatar.png ALDERS0N: w

Kellthazar: o__o

JRFerguson: https://www.codingame.com/replay/556374400

dbdr: https://www.codingame.com/replay/556374058 recurse, fix it first match I tried, disappointed

Zenoscave: could be hiding against ide?

JRFerguson: dbdr, we both have 100% win rate against reCurse

struct: you wasted your luck on the ide

struct: rip

dbdr: dunno. I thought I just got lucky

struct: he has an if

dbdr: JRFerguson :+1: :D

struct: random chance to lose

dbdr: I don't think reCurse needs hiding

struct: nah

struct: nobody can adapt their bot to beat this

Zenoscave: not even dapo?

ZarthaxX: lol

ZarthaxX: clash of titans

struct: maybe pb4 is coming

ZarthaxX: would be amazing

Zenoscave: would be scary

Zenoscave: ftfy

Wontonimo: that would be fun to watch

JRFerguson: or Agade

Marchete: I'm not sure this is easy for a NN, also the possible moves are big

Marchete: 37 * grow sizes

Marchete: 37*20? seeds

Marchete: etc etc

ClockSort: should be easy to prune seeding, or is that not true for NN?

Wontonimo: i had a hard enough time figuring out how to queue the moves in MCTS Marchete, the though of how to do that with NN made me remember I want to go to sleep soon.

Zenoscave: depends on how you encode/decode actions

BrunoFelthes: anyone are processing moves during opponent turn?

ClockSort: you don't get cycles during opponent turn

Marchete: or maybe he just use it for value

Zenoscave: *shouldn't* get cycles

Marchete: in that case is just a number

struct: What do you mean BrunoFelthes?

Marchete: pondering

Marchete: and it doesn't work here

BrunoFelthes: while you are waiting for your next input, maybe your opponent is doing some move... you can use this time...

struct: no

Wontonimo: your instance is paused

struct: Its gets paused

Marchete: paused it gets

Zenoscave: They fixed that?

BrunoFelthes: how they do it?

Marchete: linux AAA knowledge

Zenoscave: lol

Counterbalance: cgroups

BrunoFelthes: yeah, it is not a 100% for sure... but i already notice that my process is slower during opponent turns...

Marchete: you'll get a10% or so

Marchete: it's the referee time I guess

Marchete: at some point you are "allowed", but not in enemy time

Marchete: it's some another time inbetween

BrunoFelthes: cool

ClockSort: 100ms is already a lot of time

Marchete: so tldr, just don't waste time in pondering

Marchete: isn't worth it

ClockSort: it's enough time for my MCTS to decide on its bad move. more time would just make it more confident in the bad move

BrunoFelthes: not for my Garbage colletor

Marchete: or trying to use more than 1 vCPU

Marchete: ahh

Marchete: GC

Marchete: then yes :D

ClockSort: GC :grimacing:

Marchete: but the best way to improve CG is never using it

Wontonimo: don't have garbage

Zenoscave: I should look into my GC in my bot

Zenoscave: Haven't done that yet

BrunoFelthes: yeah... but I changed now to MCTS, it is very hard to not use GC on it...

Wontonimo: what Marchete said

Marchete: class NNN{

Wontonimo: (oh sorry, bad timing)

Marchete: static NNN[];

Zenoscave: in C#?

Marchete: static List<free>

Marchete: static List<used>

Zenoscave: this works?

Marchete: NNN getNew()

Marchete: void setFree(NNN)

Marchete: setFreeAll()

Marchete: ofc, both Java and C#

Zenoscave: so write maloc free and clear

Marchete: if you want to keep "new"