Fall Challenge 2020 - Bugs & Questions

Hi @Rprades, I did not know about that technique. I guess, it’s more fun to figure out and code your own algorithms. When I first saw the game, I immediately thought Prolog would be a good solution for it. I never knew there were solving libraries… :open_mouth:

Anyway, what is the complexity of implementing the algorithm yourself ? The Python libraries are open source, so burrowing the code could be done. Or is Python just too slow (making C-libraries necessary) ?

The current top rankings don’t seem to reflect performance. The top spot is quite easily beatable in the IDE while the second spot is a much stronger opponent. Also, the top spot has been claimed by the same player since the start of the Bronze League if I’m not mistaken. Is this perhaps because they were the very first to reach the Bronze League?

I suppose it doesn’t matter as much at this point because there are still upcoming leagues, but it raises the question if the top rankings are recalculated at some point. Is this only at the very end for the Legend League?

1 Like

I confirm what @SpectralFlame said. “emil” Rust bot last time I tried facing him didn’t challenge me properly. The 2nd and 3rd bots seem to be much stronger or just better sparing partners. I do not what’s going on here.

EDIT: C++ -> Rust

emil’s bot is in Rust. Rust is in debug mode in IDE matches and release mode in the arena, so you can’t test against the arena version of his bot. Same goes for C# iirc.

1 Like

I cant submit my code in the arena …

@Drmicrosoft It’s a known issue, staff are currently looking into it

1 Like

great I am waiting

1 Like

Clojure : Random timeouts on first turn only, seems to affect all clojure coders

Hi, looking at battles of all (4) people coding in clojure, we all experience the same issue : we randomly timeout on the first turn of our battles. In my case at least, the main function is not reached. If we manage to get through the first turn, then we manage all the other turns without any timeout.

It happens more often in battles than in the IDE. But both are impacted.
Commenting the (:gen-class) form, which is part of the codingame provided template, reduces the frequency of timeouts, but is not enough. This form performs an additional AOT compilation. It seems that the compile/startup time for clojure programs takes too long.

Hope this is the right place to report this.

1 Like

I’m coding in java and get frequent timeout errors. I don’t get them when testing in the IDE but i can see them all the time once I submit my code. When I import those game parameters back into the IDE, I don’t usually get the errors. Can anyone tell me why this is happening? I currently have 7 time out errors in the last 95 game with only one of them showing up when I import to the IDE.

Ask logiqub he’ll tell you what to do :wink:

More seriously look at your turn timer, you can still see your debug output in the replays. If you get timeouts that seem a bit random it may be a garbage collector issue.

Hi,

All of the sudden I started getting this error:
Warning: your code did not read all available input before printing an instruction, your outputs will not be synchronized with the game’s turns and unexpected behaviour may occur.

Even with the code that worked just fine before.
Is this a known issue?

This error is likely shown when your program times out, like several other languages affected by this, as reported above. It is under investigation. If your language is not one of those listed above with the timeout problem, you should report it as well.

1 Like

Alright, maybe I didn’t explain my thoughts clearly enought the first time. All I said is you can reduce garbage collection issues by pre-allocating your objects instead of creating/deleting them every turn. That is common sense when you know how much memory you might need at most and can afford it. Memoization will also help with this.

I invited you to PM me, so we can talk about this in more depth, but you neglected to do so. Instead you continue to point me out, as if my thinking is wrong without explaing why… I would prefer you tell exactly how it is incorrect, so we can all learn something instead.

Most likely CG can’t do much about garbage collected languages timing out more frequently than others. We already have 1000 ms at the first turn to warm things up and perform pre-allocation. For the rest, we “have to deal with it”, as best we can, writing better code or switching to another language.

I am always eager to learn better ways, and I am not sure why you are acting this way instead proposing a better solution.

3 Likes

Did you know this spiking turn time issue happens in C++ as well?

1 Like

Thank you for the information @Uljahn. We didn’t see the top C++ coders talk about this on the forum. So there is a problem with all languages. I didn’t notice it myself, because I am busy rewritting a local engine and didn’t submit in a while.

It’s knowable… Keep track of the spell id’s on the board. And if they disappear, they have been consumed.

Strange winner detection: https://www.codingame.com/replay/503493555

At the end I have 56, opponent 66 points. I brew potion with price 16 and the game is finished as it was last potion.

But as a result opponent win with 76 points. Not sure is it visual, or real bug.

Game end
Players gain 1 rupee for each tier-1 ingredient or higher in their inventory.

Oh, ok, thanks.

Is there a way to disable the UI when running the project locally?