Opus 5.5: SimCity 2000의 자동화된 역설계

개요

Opus 5.5는 오래된 소프트웨어에 대한 복잡한 자동화된 역설계를 수행할 수 있음을 입증했습니다. 개발자(drdatator)는 Opus 5.5를 사용하여 네이티브 PowerPC 코드를 현대적인 웹 기술로 변환함으로써, 몇 일 만에 TypeScript와 WebGL로 된 저폴리 SimCity 2000 클론을 개발했습니다. 이 과정은 원본 게임 로직을 역컴파일하고, 10,000일에 걸친 시뮬레이션을 통해 동일한 상태를 검증함으로써 원본 게임의 동작을 완전히 재현하는 것을 포함했습니다.

기술적 구현

자동 번역 및 검증

개발 과정은 SimCity 2000의 TypeScript WebGL 버전을 요청하는 단일 프롬프트로 시작되었습니다. Opus 5.5는 27개의 하위 에이전트를 활용하여 역컴파일된 네이티브 PowerPC 코드를 함수 단위로 번역했습니다.

정확성을 보장하기 위해, 모델은 Unicorn PowerPC 에뮬레이터와 Python을 사용하여 검증 허브를 구현했습니다. 이 허브는 맥 시스템 호출을 가짜로 만들어 10,000일 동안 게임을 실행하고, 원본 게임 상태와 새 구현 간의 일치 여부를 비교하여 동일한 동작을 보장했습니다.

자산 생성

  • 3D 및 벡터 자산: Opus 5.5가 코드로 완전히 생성했습니다.
  • 비트맵 이미지 자산: GPT Image 2를 사용하여 생성했습니다.
  • 오디오: 개발자가 현재 AI 오디오 모델이 프로젝트에 부족하다고 지적했기 때문에, Kevin MacLeod의 CC 라이선스 음악과 기타 사운드 효과를 사용했습니다.

현대화 기능

원본의 낭만적인 분위기를 유지하면서도, 개발자는 다음과 같은 현대적인 시각적 개선을 추가했습니다:

  • 심도 효과
  • 환경 사운드
  • 스모그 효과

커뮤니티 토론 및 분석

법적 및 윤리적 고려사항

디컴파일된 바이너리에서 코드를 직접 새로운 언어로 번역하는 AI의 사용은 논란의 대상입니다. 일부 커뮤니티 구성원은 이 접근 방식이 "클린룸 설계"—한 팀이 동일한 바이너리를 분석하여 사양을 만들고, 두 번째 팀이 그 사양만을 기반으로 새 코드를 구현하여 저작권 침해를 피하는 법적 기준—에서 벗어난다고 지적했습니다.

"기존 코드를 직접 읽고 새 코드로 구현할 수 있도록 에이전트가 허용된 것처럼 들립니다. 기술적으로는 역설계의 규칙을 위반한 것입니다."

기술적 성능 및 도구

일부 사용자는 성능 문제를 보고했으며, 모바일 기기가 "불편하게 뜨거워지는" 현상과 일반적인 최적화 부족을 언급했습니다. Rust와 WASM/WebGPU를 사용해 더 나은 성능을 얻을 수 있다는 제안이 있었으며, LLM이 이제 원핵 네이티브 데스크톱 앱의 '비브코딩'에 효과적으로 사용될 수 있다는 것을 시사합니다.

AI의 게임 개발에서의 역할

커뮤니티 내 토론은 AI의 두 번째 및 세 번째 차수 효과에 대한 변화를 강조했습니다. 일부 사용자는 AI로 생성된 게임에 "영혼"이나 인간의 노력이 느껴지지 않는다고 우려를 표했지만, 다른 사용자는 LLM이 여전히 완전히 새로운 게임 메커니즘을 창조할 수는 없지만, 기존 게임을 역설계하고 조합하는 데 "마법사" 수준의 능력을 갖추고 있다고 지적했습니다.

"저는 LLM이 새로운 게임을 설계할 수 있다고 생각하지 않지만, 기존 게임을 역설계하고 조합하는 데는 마법사 수준입니다."

기타 Opus 5.5 활용 사례

다른 사용자들은 Opus 5.5를 사용해 Red Alert 2와 같은 오래된 게임용 맞춤형 런처를 만들고, 렌더링과 게임 로직을 분리하여 병렬 시뮬레이션을 실행함으로써 버그 수정, 사용자 정의 유닛 추가, 밸런싱 테스트를 성공적으로 수행한 경험을 공유했습니다.

Sources

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch