Spring Challenge 2022 - Bugs & questions

Thanks, I will have a look. I am pretty sure I am using the x and y values (before considering the vx, vy) but I have to do the numbers and check.

I can’t check my code. For some time I have the error (#73): “Only 1 executor running at the same time for a test session”

I got promoted from Wood 2 to Wood 1 after launching my first arena testing. I went to dinner, came back. I am now Bronze, even if i didnt launch a new arena, didnt implement the wind ability. Is it a bug ? Anyone else being promoted without “deserving” it ?

When you reach a new league your code is automatically submitted so it’s not surprising.
Wind is not required to reach bronze, all you need is a defense that is good enough.

In the arena I get the following error which does not occur in IDE when replaying with the same conditions:

Code failed: main entry point was not reached in time
(possible reasons: too many static initializer processing, too many messages sent to stderr before reaching the main, etc.)

It’s annoying that my bot dies in round 1 with this weird error message.
Can anyone of the devs get in touch with me to solve the problem?

1 Like

I was writing the sim for control spell and I would like to know if this is not a bug.
It seems a bit weird to me that threath gets updated but vx and vy do not.

frame 22:
id: 7 x: 1875 y: 5839 vx: -347 vy: -198 threath: 1 (inputs).
I cast spell control on spider 7.

frame 23:
id: 7 x: 1528 y: 5641 vx: -347 vy: -198 threath: 0 (inputs).
Spell was applied and spider moved in that direction (vx and vy were not updated but threath changed to 0).

frame 24:
id: 7 x: 1528 y: 6041 vx: 0 vy: 400 threath: 0 (inputs).
vx and vy get updated on this turn.

2 Likes

I think it’s useless to give us the total collected MANA instead of how much MANA we still have during the game. so many wasted moves due to lack of MANA. and trying to calculate it from total MANA is tedious.

1 Like

Are you sure about that? The referee sends us the mana values that are displayed by the viewer, and those values decrease after casting a spell.

3 Likes

Il semble y avoir une erreur dans la description française du challenge :
“Temps de réponse par tour ≤ 100ms”

Il semble que ce soit une erreur, car en anglais c’est indiqué 50ms. J’ai trouvé réponse dans le chat, je peux arrêter de debug mes timeout ^^

1 Like

Hi! I thought top left should be X=0 and Y=0 but I have X=-526 and bottom right I have X= more than 18k. I d like to know if the base is indeed at X=0 or at X=-526, same for bottom right

Hit the gear icon and turn on debug overlay. You find that the “playable area” indeed starts at (0,0)

I saw this in the chat :

Coding Games and Programming Challenges to Code Better turn 110 monster 83 stuck?

Is this intended ?

1 Like

The referee code seems to set the timeout to 50ms per turn.

I think it is because of wind. When wind pushes something out of the area, the thing doesn’t move.

1 Like

you’re right (just as @jmpeg ), that’s what’s happening here. cc @fgsdt @hl037

@MarvinTheMartian it’s recommended not to use Clojure for the challenge. Sorry about that

@filani we’ve unblocked you. Sorry for the issue

@struct let us look into that

@chouch @benobab you’re right. Thanks for reporting. Max turn time is indeed 50ms

2 Likes

Ohh HAHAHAHAHAHAHHA, I’ve been using my opponent MANA to do my calculations :sweat_smile: :sweat_smile: :joy: :joy: , I didn’t read the subject correctly.

Hey, I’m looking to get this running locally so I can train a quick and dirty GA model on it to enter into the arena, but I am struggling to get it to run locally, it’s been a long time since I’ve been near Java. Does anyone have any advice or a link to some docs?

Thanks!

Thank you!

Hello, just a few words to tell you that Scala default code doesn’t compile : line 32 :

            val Array(id, type, x, y, shieldLife, isControlled, health, vx, vy, nearBase, threatFor) = (readLine split " ").filter(_ != "").map (_.toInt)

has to be replaced by this one for instance :

            val Array(id, type_, x, y, shieldLife, isControlled, health, vx, vy, nearBase, threatFor) = (readLine split " ").filter(_ != "").map (_.toInt)

The reason is that type is a keyword of the langage.
Regards.

Why is Clojure not recommended? Do you have some “weird” way of executing it? Should be fine with java -jar on a uberjar. Another way would be GraalVMs native image - not sure about the performance implications of native image.