TL;DR
- Super Mario Galaxy 1 디컴파일 프로젝트가 완료됐으며, 게임 복사본이 필요한 소스 코드 저장소로 PC 포트 제작과는 별개임.
- 저장소에는 게임 에셋이나 어셈블리 코드가 포함되지 않으며, 지원 버전은 한국판 RMGK01 Rev 0임.
- 프로젝트 진행에 AI/대형 언어 모델(LLM)을 사용하지 않았으며, 이름 지정·코드 정리·문서화에 AI 사용은 허용됐지만 실제로 사용되지는 않음.
- 빌드에는 Python, Ninja, 게임에서 추출한
sys/main.dol이 필요하며, 플랫폼에 따라wibo가 자동으로 내려받아 사용됨. - 빌드 후
objdiff로 오브젝트를 비교할 수 있으며, 변경된 소스 파일과 설정 파일은 자동으로 다시 빌드됨.
프로젝트 개요
- Petari는 Super Mario Galaxy 1의 디컴파일 프로젝트임.
- 저장소에는 게임 에셋이나 어셈블리 코드가 전혀 포함되지 않으며, 별도의 게임 복사본이 필요함.
- 이 프로젝트는 PC 포트 제작을 목표로 하지 않음. 진행 중인 PC 포트 AstroCore에 관한 정보와 질문은 Discord 서버에서 확인할 수 있음.
AI 사용 관련
- 디컴파일 과정을 빠르게 진행하는 데 AI나 대형 언어 모델(LLM)을 사용했다는 논의와 의혹이 제기됐으나, 프로젝트에서는 이를 사용하지 않았음.
- 변수 이름 지정, 코드 정리, 문서화처럼 프로젝트 진행에 직접 영향을 주지 않는 작업에는 AI 사용이 허용됐지만, 실제로 프로젝트에 활용되지는 않았음.
- 프로젝트의 빠른 진척은 새로운 협력자, 높은 동기, 활발한 커뮤니티 활동에서 비롯됐으며 AI 사용이나 다른 형태의 자동 디컴파일 작업에서 비롯된 것이 아님.
- 이 설명을 충분히 신뢰하기 어렵다면 소스 코드를 직접 읽고 결론을 내릴 수 있음.
- AI 사용 지침은 다음과 같음.
- 코드 정리, 서식 지정, 문서화, 이름 지정 지원에는 AI를 사용할 수 있음.
- AI가 생성한 디컴파일 작업은 허용되지 않음.
- AI가 생성한 것으로 명백한 디컴파일 결과물이나 그 밖의 AI 생성 저품질 결과물을 포함한 풀 리퀘스트는 거부됨.
- 기여자는 제출한 디컴파일 작업을 설명하고 정당화할 수 있어야 하며, 이 규칙은 도구가 생성한 코드에도 적용됨.
- 프로젝트를 가능한 한 인간 중심으로 유지하는 것이 목표임.
지원 버전
RMGK01: 한국판 리비전 0
의존성
Windows
- Windows에서는 기본 도구 사용을 강력히 권장하며, WSL이나
msys2는 필수가 아님. - WSL에서 실행하면
objdiff가 자동 재빌드에 필요한 파일 시스템 알림을 받을 수 없음. - Python을 설치하고
%PATH%에 추가해야 하며, Windows Store에서도 설치할 수 있음. - Ninja를 내려받아
%PATH%에 추가해야 함.pip install ninja로 빠르게 설치할 수 있음.
macOS
brew install ninja로 Ninja를 설치해야 함.- 최소 32비트 Windows 바이너리 래퍼인
wibo가 자동으로 내려받아 사용됨.
Linux
- Ninja를 설치해야 함.
- 최소 32비트 Windows 바이너리 래퍼인
wibo가 자동으로 내려받아 사용됨.
빌드
- 저장소는 다음 명령으로 복제함:
git clone https://github.com/SMGCommunity/Petari.git - Dolphin Emulator를 사용해 게임을
orig/RMGK01에 추출해야 함. - 공간을 절약하려면 필요한 파일은
sys/main.dol뿐이며, 나머지 파일은 삭제할 수 있음. python configure.py로 설정함. 한국판RMGK01이 아닌 버전을 사용하려면--version으로 지정함.ninja로 빌드함.
디프 비교
- 최초 빌드가 성공하면 프로젝트 루트에
objdiff.json이 생성됨. - encounter/objdiff에서 최신 릴리스를 내려받고, 프로젝트 설정에서 프로젝트 디렉터리를 지정하면 구성이 자동으로 로드됨.
- 왼쪽 사이드바에서 오브젝트를 선택해 디프 비교를 시작함.
- 소스 파일, 헤더,
configure.py,splits.txt,symbols.txt가 변경되면 프로젝트가 자동으로 다시 빌드됨.
크레딧
bte작업을 수행한doldecomp팀,JSystem을 제공한tp, 그리고 저장소가 코드와 헤더를 가져온ogws에 감사를 전함.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요