In English, please.

JavaScript · 로그인 없이 시작

전략을 JavaScript 코드로 만들고, 대결로 시험하세요

게임 규칙을 읽고 전략을 설계한 뒤 AI 또는 온라인 상대와 겨루며 개선하세요. 로그인 없이 시작할 수 있습니다.

게임 선택하기
코드 두 개가 마주 보고 겨루는 코드배틀 대전 화면

여섯 줄로 시작합니다

코드배틀에서는 손으로 게임을 하지 않습니다. 게임을 하는 코드를 씁니다. 아래가 가위바위보 전략 전체입니다. 이 화면의 에디터에 그대로 붙여 넣으면 돌아갑니다.

상대가 방금 낸 것을 이기는 손을 낸다
var next = 2;              // 첫 턴은 바위

function onGameStart() {}
function onRoundStart() {}

function onTurnStart() {
	return next;           // 1 가위 · 2 바위 · 3 보
}

function onTurnEnd(result) {
	next = result.opponentchoice % 3 + 1;
}

function onRoundEnd() {}
function onGameEnd() {}

이 코드로 대결하면

LEVEL 1
20판 전승
LEVEL 2
20판 전패

LEVEL 1은 상대의 직전 수를 보지 않아 이 전략에 그대로 잡힙니다. LEVEL 2는 반대로 이 규칙성을 읽어 내고 되받아칩니다. 그래서 다시 씁니다. 그것이 코드배틀입니다.

게임 20판은 라운드 100번, 턴 10,000번입니다. 이 숫자는 저장소의 테스트가 실제 규칙 엔진으로 매번 다시 확인합니다.

가위바위보에서 직접 확인하기
  1. 게임 규칙과 샘플 코드의 계약을 확인합니다.
  2. 직접 또는 AI 도구의 도움을 받아 전략을 구현합니다.
  3. AI·온라인 상대·코드 아레나와 겨루고, 로그를 보고 고칩니다.

GAME은 여러 ROUND로, ROUND는 여러 TURN으로 구성됩니다. 각 TURN의 선택이 ROUND와 GAME의 승패를 결정합니다. 코드에서 printLog()로 남긴 로그는 화면 하단 로그 영역에 나옵니다.

1코드 배틀

전략 코드 하나로 AI 또는 온라인 상대와 대결

지금 이용할 수 있습니다. 로그인하지 않아도 바로 플레이할 수 있습니다.

가위바위보 게임

  • 바위가 가위를 이기고, 보가 바위를 이기며, 가위가 보를 이기는.. 네, 그 게임 맞습니다.
  • 매 TURN마다 가위(1), 바위(2), 보(3) 중 하나를 선택하고, 가위로 이기면 1점, 바위로 이기면 2점, 보로 이기면 3점을 획득합니다.

오목 게임

  • 바둑판 위에서 가로,세로,대각선 중 한 방향으로 연속된 다섯개의 돌을 먼저 놓으면 이기는 게임입니다.
  • 매 TURN마다 상대의 마지막 좌표를 받은 후 나의 좌표를 결정하여 리턴하는 방식이며, 한판이 하나의 ROUND이고 네판을 먼저 이기면, GAME에서 승리하게 됩니다.

숫자야구 게임

  • 상대와 내가 각각 자신의 3자리 숫자를 정한 후, 먼저 상대의 숫자를 맞추면 승리하는 게임인데, 만약 동시에 맞춘 경우 더 큰 숫자를 가진 쪽이 승리하게 됩니다.
  • 매 TURN마다 상대 숫자를 예측하고, 3자리 숫자 각각에 대하여 숫자와 자리가 모두 일치하면 strike, 숫자는 일치하는데 자리가 다르면 ball이 되는 결과값을 받아서 분석합니다.

섯다 게임

  • 상대와 내가 각각 2장의 카드(화투)를 받게 되고, 2장의 카드의 조합으로 승패를 결정하는 게임입니다.
  • game이 시작될때 money를 받고, round가 시작될 때 내 카드 2장과 상대 카드 1장을 받고, 각 turn에서 raise 또는 call 또는 die를 선택해야 합니다.
개발자 행사 사례

개발자 행사에서 맞붙는 두 개의 전략 코드

SKP 2021~2023 개발자 행사에서 사용된 과거 예선 화면을 살펴보세요.

1:1 무술대회

  • SK플래닛의 2021년 개발자 행사 중 코드배틀 세션을 지원하기 위해 만든 페이지입니다.
  • 매 TURN마다 공격수단(주먹 or 발차기)과 공격위치(머리 or 몸통 or 다리)를 선택하고, 이기면 공격수단 및 공격위치에 따라 점수를 획득하는 방식입니다.
과거 행사 예선 보기 →

Code Baseball Classic

  • SK플래닛의 2022년 개발자 행사 중 코드배틀 세션을 지원하기 위해 만든 페이지입니다.
  • 진짜 야구를 표방하는 코드배틀 게임입니다. 3X3 스트라이크존이 있고, 매 TURN마다 어디로 던질지, 또는 어디를 칠지를 선택하며, 규칙에 따라 홈런, 안타, 스트라이크, 볼이 됩니다.
과거 행사 예선 보기 →

숫자카드 배틀

  • SK플래닛의 2023년 개발자 행사 중 코드배틀 세션을 지원하기 위해 만든 페이지입니다.
  • 섯다와 게임 방식이 거의 같습니다. 숫자 카드 2장씩이 주어지고 상대의 카드 1장을 볼 수 있습니다. 서로 베팅을 하고 높은 카드 페어를 가진 쪽이 베팅한 코인들을 가져가는 방식입니다.
과거 행사 예선 보기 →