플레이하며 속도 바꾸기
시작을 누르고 선인장을 뛰어넘으세요. 속도 슬라이더를 움직이면 선택한 고정 속도로 플레이할 수 있습니다. 복구된 규칙을 선택하면 다시 6에서 시작해 서서히 가속합니다.
재구성한 게임 플레이
원래 규칙: 6에서 시작해 13을 향해 가속합니다.
REA가 반환한 스크립트 읽기
REA로 wayou의 Chromium 기반 브라우저 버전을 분석했습니다. 로드된 index.js가 반환됐으며, 게임 업데이트 함수의 다음 분기가 포함돼 있었습니다.
if (this.currentSpeed < this.config.MAX_SPEED) {
this.currentSpeed += this.config.ACCELERATION;
}
설정값은 SPEED: 6, ACCELERATION: 0.001, MAX_SPEED: 13입니다. 게임은 충돌이 없는 업데이트에서 이 분기를 실행합니다.
새 게임에 같은 규칙 적용하기
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을 조금 넘을 수 있습니다.
직접 분석해 보세요
- 코딩 에이전트와 함께 REA를 설정하세요.
-
https://wayou.github.io/t-rex-runner/를 페이지 URL로 사용해 브라우저 연결 절차를 따르세요. - 에이전트에게 페이지 URL과 로컬 디버깅 엔드포인트를 알려준 뒤 이 프롬프트를 복사하세요.
REA로 이 공룡 게임을 분석해 줘. 왜 점점 빨라지는지 속도 규칙을 보여주고, 속도를 조절할 수 있는 작은 버전을 만들어 줘.
추가로 물어보세요: “점프 높이는 어디서 계산해? 새 버전에 점프 높이 조절 기능을 추가해 줘.”
출처: Chromium Authors의 분석한 속도 코드. 저작권과 BSD 라이선스. REA 4.1.0으로 Chrome 150에서 실행 중인 HTTP 버전을 분석했습니다.