# Codingame

see also

Arena

Referee

  • codinGame - These are the actual codingame referees, written by CG staff.

External

  • Cg-brutaltester / github
  • The Game Runner - The Game Runner lets you run your game locally during developement. It comes with a handy HTML package to watch each game’s replay. The parameters you set to the Game Runner will not affect the final contribution.

using Codingame playground

  • CG Benchmark - A benchmark tool for CodinGame:
    • don’t need to have your browser open
    • you can queue several codes to run big fat batches of games and compare results easily.
  • CG Spunk / Github

Last Battle history

  • CG stats
  • Using match history - We will explore the CodinGame API to understand how to download replays. Then we will parse them to extract the data we are looking for. We will then feed it into our bot to debug a specific action.

Codingame API

Firefox Extension

  • CG Enhancer / github - enhance Codingame IDE

  • CG Local - basically a copy of CG Sync that works with both Chrome and Firefox, and instead of a Chrome App it uses a Java application to watch the selected file for changes. Besides that, it also makes it easier to work in different files for different puzzles and is completely open-source. / github

Chrome Extension

Merger Tools

Technical details

CodinGame SDK

The CodinGame SDK is a Java project that allows you to write programming games for CodinGame.

Maybe old

Rest API

liste des agents des participants au concours: curl -H "Content-Type: application/json" https://www.codingame.com/services/LeaderboardsRemoteService/getChallengeLeaderboard --data '["hypersonic",null,"global"]'

Ca renvoie une liste JSON de tous les participants, et chaque participant a un champ “agentId”.

Pour chaque “agentId”, on peut récupérer toutes ses batailles, par exemple pour l’agent 707853:

curl -H "Content-Type: application/json" https://www.codingame.com/services/gamesPlayersRankingRemoteService/findLastBattlesAndProgressByAgentId --data '[707853,null]'

Ca renvoie encore une autre liste JSON avec toutes les parties jouées, et le résultat. (Y’a aussi la partie à jouer dans le replay de la page mais on s’en fout). Chaque partie a un champ “gameId”.

Pour chaque “gameId”, on peut enfin récupérer le déroulement complet, avec stdin et stdout de tous les joueurs. C’est ce qui est envoyé au player web, donc le format est peut être pas 100% équivalent au format d’entrée / sortie de l’agent, mais toutes les infos sont là à ce que j’ai pu voir sur les challenges précédents. Par exemple pour la partie 136874087:

curl -H "Content-Type: application/json" https://www.codingame.com/services/gameResultRemoteService/findByGameId --data '[136874087,null]'

Pour la dernière vu que le format des données change pour chaque challenge, il faut faire un parser spécifique à chaque fois, et je n’en ai pas fait.

Written on January 28, 2018, Last update on January 9, 2023
codingame AI puzzle