Ocean of Code - Bugs

Please use this topic to report bugs or suggest improvements about the Ocean of Code community challenge.


The referee code is publicly available on Github:


:rotating_light: As the challenge was built up in just a few days, it’s highly possible there are bugs or unclear stuff in the rules, so please consider the few days of the challenges as “sandbox” time. We’ll fix bugs and update the statement as soon as humanly possible. :rotating_light:

Thank you @Illedan and @eulerscheZahl for making this happen so fast. And thank you @G-Rom for your prototype.


Technically not a bug, but there is a TODO line left in the description (in Wood 2 for sure):
“TODO: along with screenshot, as this table uses concrete examples and isn’t abstract?”

1 Like

That’s on me :frowning:
The statement got updated now. There was an issue with SONAR (for wood1 and above) too, which got corrected.


Currently the game has 100 turns per players. We will increase it to the max of 300 on the next update.

The island generation needs to be looked at - I won this game, but mostly because of the crappy map placement for my opponent!

Each player selects their own spawn location as the initial output. Your enemy choose poorly. :slight_smile:

1 Like

oh, yes, I guess thats true lol - forgot we got to choose a starting location!

Just maybe a precision to add in the indications.

Possibles output moves are N,S,E,W true ? (It’s just write : given direction (north, east, south, west))

Thank for the game !

It is not very clear what is meant by, for the torpedo, to “be fired at an arbitrary water position within a range of 4 cells.” I had to read the referee to see that it must be 4 adjacents cells, not in diagonals.
So you can fire using the following patterns (S submarine, X target of torpedo):

S¤¤¤X  S¤¤¤  S
          X  ¤
    S¤       ¤
S¤¤  ¤       ¤
  ¤  ¤       X
  X  X

I am right ?


Section “Inputs for each next turns” says:
Line 1: a string with 8 space separated integers.
x y myLife oppLife sonarResult torpedoCooldown sonarCooldown silenceCooldown mineCooldown

but sonarResult is supposed to be on line 2:

Line 2: a string sonarResult which gives you the result of the SONAR action...

It should be deleted from line 1’s description.

@Arglanir this is also possible:


@toomyem we know, will be corrected with the next update

Thank you. A good addition would be to indicate what is in store in the higher league, even if we can guess from the input :slight_smile:
I reached Wood 1 but it was not evident what had been added. Display it in a specific color would maybe help ?
If the enemy uses the sonar, will I see “SONAR4” (in the description) or “SONAR 4” (what I see in the referee)?

Both of your points are one our list and will be added on the next deploy. You can see a preview here. To see statements for different leagues, switch them at the top right.

Wood should have more games for times like these where there are nearly 300 people there. Scale it up imo.

In Java, an exception occurs with some invalid output :
TORPEDO isn’t allowed with SURFACE command.
Result : unknown exception: index 1 out of bounds for lenght 1

Ex. : https://www.codingame.com/replay/441405225

Referee should handle this and issue a proper message.

TORPEDO needs to have coordinates after the command.

We discovered a bug in the Referee where player aiming at Coordinates very far away, Islands or outside the map causes the Referee itself to timeout. This is most likely what caused the non functioning Submits.
We have fixed it and are waiting for CG to update the game.

In the meantime, try to aim inside the map and avoid Islands :smiley:


That’s the point, if you put a bad command, referee throw an exception. It should handle that case and maybe force a SURFACE command.

Depending on how bad it is, you should lose according to the guidelines.

  • The referee must end a player’s program when receiving an unrecognizable command.
  • The referee must send an error message in the console when receiving an invalid but recognized command.

Hello, I’m lightly colorblind and I cannot distinct at all the red player indications (loading, life point). For me, it’s all red.
For green player (I see it green :grinning:) the colors are very differents.
If you release a new version, could you improve this?