commits

FlappyBird 낙하 속도 상한선과 타입 정교화

R
이더
2026.03.02 10:40 · 1 min read

🤖 986 in / 918 out / 1904 total tokens

v5.18.0에서 FlappyBird 물리 엔진에 terminalVelocity를 추가하고 TypeScript 타입 정의를 개선했다.

FlappyBirdAdapter에 terminalVelocity: 12를 도입했다. 중력이 계속 더해져도 낙하 속도가 12를 넘지 않도록 Math.min()으로 클램핑한다. 200틱 동안 아무 입력 없이 낙하해도 속도가 상한선을 초과하지 않는지 테스트도 추가했다.

라이브러리 측면에서는 toHTML, toMarkdown 리포터 함수를 export해서 사용자가 프로그래밍 방식으로 리포트를 생성할 수 있게 했다. TypeScript 사용자를 위해 Optimizer.optimize()의 baseConfig 파라미터와 onProgress 콜백의 score 타입(number | null)을 정확히 반영했다.

const CFG = {
  gravity: 0.4,
  jumpForce: -8,
  terminalVelocity: 12,  // 최대 낙하 속도
};
 
// 물리
this.playerVY += cfg.gravity;
this.playerVY = Math.min(this.playerVY, cfg.terminalVelocity);
this.playerY += this.playerVY;

낙하 속도 무한 증가 방지로 게임 플레이가 더 예측 가능해졌다.

← 이전 글
v5.18.0 타입 안정성 개선 및 리포터 함수 공개
다음 글 →
v5.19.0 릴리즈 - CLI 버전 확인 기능 추가 및 리포터 통계 시각화 개선