PC-98 동방 리버스 엔지니어링 ReC98, 포인트 아이템 음수 버그 정리하고 은퇴 선언
- PC-98 동방 프로젝트 리버스 엔지니어링 프로젝트 ReC98 운영자 nmlgc가 2026-10-05 블로그에서 은퇴를 선언함. 마지막 작업 묶음 P0336~P0341은 Shuusou Gyoku 엔진과 백엔드를 공유 포트 라이브러리로 분리하고 게임 로직을 4단계로 떼어내 Windows와 Linux DLL 빌드를 만든 것
- 2024년 코드 정리에서
sprintf("%d")를%u로 바꾼 뒤 드러난 버그로 포인트 아이템 값이 음수가 될 수 있음이 확인됨. 미스 후 VIVIT의 Y가 659에서 프레임당 1.5px로 올라오는 동안 ((469 - Viv.y) + evade×4) × 160 공식이 음수를 내고 게임은 이를 0으로 클램프하지 않으며 팝업용 5×7 폰트에 마이너스 글리프도 없음 - MSVC 환경 문제 두 가지를 다룸.
sprintf()의 로캘 때문에 코드가 부풀어 오르는 원인을 조사했고, MSVC의 C++ 예외 처리 경로를 타지 않게 우회하는 방법을 정리함 - 게임 로직 분리가 끝난 뒤 공유 ReC98 소스 포트 엔진이 생겼고, Shuusou Gyoku용 리플레이 검증 CLI를 구현해 검증 성능까지 측정함
- 글은 포인트 아이템 처리, 게임 로직 범위와 RNG, 예외 처리 우회, 포팅 엔진, 리플레이 검증, 향후 작업, 은퇴 발표 순서로 구성되며 익명 후원자와 Root, Ember2528, WishMakers, Arandui가 자금을 댐
Hacker News 의견들
LLM 도움 받는 리버스 엔지니어링 시대는 반갑긴 한데, 수십 년 해온 사람들이 자기 분야에서 밀려나는 걸 보면 마음이 아프더라.
그럼 그게 취미라고 부를 수 있는 건가? 폭약 낚시가 낚시꾼의 열정을 해친다고 말하는 것과 같은 소리 같은데.
취미는 원래 인정도 돈도 못 받는 경우가 많다. 나도 체스 프로가 될 수 없다는 걸 알면서도 계속 뒀고 컴퓨터가 인간보다 세진 뒤에도 놓지 않았음. 생계가 갑자기 끊길 때 훨씬 개인적인 비극이 되는 거지.
나는 수십 년째 리버서인데 LLM이 이 능력을 모두에게 열어준 건 좋은 일이라고 본다. 옛날 게이트키퍼들이 무관해진 거고, 불평하는 쪽은 자유나 사용자 권한보다 명성과 돈을 원했던 사람들 아님? 컴파일러 나왔을 때 '컴파일러 슬롭'이라던 소리랑 판박이다.
이건 이세돌이 알파고와 둔 뒤 겪은 일이 이제 모두에게 오는 것뿐이다. 우리 모두 이세돌임.
그거랑은 다르다. 진짜보다 못한 프로젝트가 더 주목받고 공로를 가져가는 게 문제임. 에뮬레이터를 바이너리에 끼워 넣고 '에뮬레이터 없는 재컴파일'이라 우기는 프로젝트가 수십 개인데 아무도 확인 안 하고 추천 버튼부터 누른다.
글 전체를 읽어봐라. '바이브 코더 때문에 메가 사라졌다'는 단순한 얘기가 아니다. 작성자는 ZUN도, 바이브 코더도, AI 혐오자(Bluesky 쪽)도 다 싫어한다.
맥락을 보태면 동방 게임은 팬 번역 패치로 이미 서구에서 다 돌아갔다. PC-98판도 에뮬레이터에 영어 패치까지 넣어 배포되던데, 이 리버스 엔지니어링 프로젝트는 게임을 돌리려는 게 아니라 동작을 문서화하고 모딩을 쉽게 하려는 쪽임.
'Windows 동방은 불법 복제하는 게 도덕적으로 옳고 돈 내는 게 틀렸다'는 대목에서 멈칫했다. ZUN이 얼마나 버는지 모르면서 동인 서클 만드는 사람을 미디어 제국으로 가정하는 건 좀 이상하지 않나.
커뮤니티에서 실제로 그런 분위기였다. 나는 게임을 돈 주고 샀고 ZUN 사인받은 디스크도 있는데, 샀다고 말만 해도 IRC에서 밴 당했다. 음악 CD까지 산 일본 친구들도 쫓겨났음.
수입과 취미가 사라지는 걸 보는 사람에게 공감하고 싶었는데 글투가 너무 비아냥거려서 힘들었다. 이런 사람이랑은 같이 일하고 싶지 않음.
그 댓글 덕에 오히려 글을 안 읽어도 되겠다고 판단했다. '공감하고 싶었지만 불쾌해서 못 하겠다'는 결국 사람 됨됨이 보고 정의감을 정한다는 자랑 아니냐. 아무도 물어보지도 않았고.