분석 → 재구현 → 변경

공룡 게임의 속도 규칙을 재현해 보세요

게임의 가속을 재현하려면 먼저 속도를 제어하는 규칙을 찾아야 합니다. REA로 실행 중인 스크립트를 얻고, 그 규칙으로 속도를 조절할 수 있는 미니 게임을 만들었습니다.

플레이하며 속도 바꾸기

시작을 누르고 선인장을 뛰어넘으세요. 속도 슬라이더를 움직이면 선택한 고정 속도로 플레이할 수 있습니다. 복구된 규칙을 선택하면 다시 6에서 시작해 서서히 가속합니다.

재구성한 게임 플레이

6 → 10 → 13

원래 규칙: 6에서 시작해 13을 향해 가속합니다.

슬라이더를 움직여 원하는 속도를 설정하세요. Space 키나 점프 버튼을 누르면 선인장을 뛰어넘습니다.

REA가 반환한 스크립트 읽기

REA로 wayou의 Chromium 기반 브라우저 버전을 분석했습니다. 로드된 index.js가 반환됐으며, 게임 업데이트 함수의 다음 분기가 포함돼 있었습니다.

REA · 선택한 스크립트 소스
if (this.currentSpeed < this.config.MAX_SPEED) {
  this.currentSpeed += this.config.ACCELERATION;
}

설정값은 SPEED: 6, ACCELERATION: 0.001, MAX_SPEED: 13입니다. 게임은 충돌이 없는 업데이트에서 이 분기를 실행합니다.

새 게임에 같은 규칙 적용하기

재구현 · dino-speed.js
function advanceSpeed(speed) {
  return speed < 13 ? speed + 0.001 : speed;
}

미니 게임은 이 함수로 자동 가속합니다. 슬라이더를 움직이면 고정 속도를 사용합니다. 화면 그리기, 점프 물리, 사각형 충돌 판정은 교육용으로 새로 작성한 코드이며, 시뮬레이션은 초당 60회 갱신됩니다.

속도 규칙 다운로드 · 게임 코드 읽기

재구성 결과 검증

장애물과 자동 실행 예약을 끈 상태에서 원본 게임의 업데이트 함수를 호출했습니다. 기록된 속도를 복구한 규칙의 재실행 결과와 비교해 보세요.

업데이트 원래 게임 재구성된 규칙
0 6.000 6.000
1,000 7.000 7.000
4,000 10.000 10.000
10,000 13.001 13.001

값은 소수점 이하 셋째 자리까지 반올림했습니다. 이 분기는 값을 더하기 전에 조건을 검사하므로 마지막 증가로 속도가 13을 조금 넘을 수 있습니다.

직접 분석해 보세요

  1. 코딩 에이전트와 함께 REA를 설정하세요.
  2. https://wayou.github.io/t-rex-runner/를 페이지 URL로 사용해 브라우저 연결 절차를 따르세요.
  3. 에이전트에게 페이지 URL과 로컬 디버깅 엔드포인트를 알려준 뒤 이 프롬프트를 복사하세요.
코딩 에이전트

REA로 이 공룡 게임을 분석해 줘. 왜 점점 빨라지는지 속도 규칙을 보여주고, 속도를 조절할 수 있는 작은 버전을 만들어 줘.

추가로 물어보세요: “점프 높이는 어디서 계산해? 새 버전에 점프 높이 조절 기능을 추가해 줘.”

출처: Chromium Authors의 분석한 속도 코드. 저작권과 BSD 라이선스. REA 4.1.0으로 Chrome 150에서 실행 중인 HTTP 버전을 분석했습니다.

상단