Linux에서 Space Cadet Pinball
47 minutes ago
1
- Space Cadet Pinball은 리버스 엔지니어링으로 소스화되어 여러 플랫폼에서 실행 가능함
- Linux에서는 Flatpak 설치가 가장 쉽고, Windows 원본 게임 리소스도 포함됨
- Full Tilt! Pinball 데이터로 바꾸면 1024x768 해상도를 쓸 수 있음
- Full Tilt 데이터는 규칙도 바꿔 일부 불빛이 토글되지 않고 계속 켜짐
- 판매 중단된 독점 소프트웨어는 FOSS 라이선스 전환 에스크로가 바람직함
Linux에서 Space Cadet Pinball 실행하기
- Windows XP에 번들되던 Space Cadet Pinball은 디컴파일러와 리버스 엔지니어링 도구로 소스 코드가 만들어졌고, 여러 플랫폼에서 실행 가능하게 정리된 GitHub 프로젝트가 있음
- Linux에서 가장 쉬운 실행 방법은 Flatpak이며, Windows 버전의 원본 게임 리소스도 함께 포함됨
- GUI에서는 KDE Discover 같은 도구로 설치할 수 있고, CLI에서는 다음 명령으로 설치 가능함
flatpak install com.github.k4zmu2a.spacecadetpinball
- 브라우저 기반 버전도 있지만, 로컬 컴퓨터에 직접 설치해 실행하는 방식이 더 좋았음
Full Tilt 데이터로 더 높은 해상도 사용하기
- 기본 그래픽은 480p 수준이라 거칠게 보일 수 있음
- 별도 버전인 Full Tilt! Pinball의 게임 데이터는 1024x768 해상도 표시를 지원함
- Full Tilt 게임 데이터는 archive.org의 zip 파일에서 받을 수 있음
- Flatpak 버전이 이 데이터 파일을 쓰게 하려면 약간의 수동 작업이 필요함
-
데이터 적용 절차
- 먼저 게임을 최소 한 번 실행해 데이터 디렉터리를 생성해야 함
- 다운로드한 zip 파일을 Flatpak 데이터 디렉터리에 직접 압축 해제함
cd ~/.var/app/com.github.k4zmu2a.spacecadetpinball/data/SpaceCadetPinball
unzip ~/Downloads/CADET.ZIP
- 앱에 번들된 기존 데이터 디렉터리를 삭제하거나, 조심스럽게 진행하려면 이름을 바꿔야 함
sudo rm -r $(flatpak info --show-location com.github.k4zmu2a.spacecadetpinball)/files/extra/Pinball
- 이 삭제가 필요한 이유는 게임이 여러 위치에서 데이터를 찾지만, 한 디렉터리에서 데이터 파일을 찾으면 다른 위치를 더 찾지 않기 때문임
- 사용자별 설치라면 sudo가 필요 없을 수 있지만, 설치 위치가 /var/lib/flatpak이면 root 권한이 필요함
- 게임이 업데이트되면 3단계를 반복해야 할 수 있음
- 다만 Flatpak 패키지는 2년 넘게 업데이트가 없어 업데이트 가능성이나 빈도는 낮아 보임
원본 데이터와 Full Tilt 데이터의 차이
- 원본 파일과 Full Tilt 파일을 합쳐 두면 게임 안에서 원본 3DPB 데이터와 Full Tilt 데이터를 전환할 수 있음
- 데이터 파일은 게임 규칙에도 영향을 주는 것으로 보임
- 원본 3DPB 버전에서는 재진입 레인과 발사 레인의 불빛이 공이 지나갈 때마다 토글됨
- Full Tilt 버전에서는 불빛이 토글되지 않고 켜진 상태로 유지되어, 불빛 세트를 완성하고 연결된 범퍼 세트를 업그레이드하기 쉬워짐
- 비슷한 시기 일부 Mac에는 Marble Blast라는 게임이 사전 설치되어 있었고, 그 게임에도 비슷한 애착을 가진 사람들이 있었음
- Marble Blast 시리즈는 이 핀볼 게임과 달리 이후에도 확장되어 현재 플레이 가능한 더 새로운 버전들이 있음
이식성과 보존
- 오래된 게임이 충분히 사랑받았고, 특히 역량과 동기가 있는 사람이 작업한 덕분에 여러 플랫폼에서 실행 가능한 형태가 됨
- 소스 코드가 어떤 형태로든 있으면 게임을 다양한 플랫폼으로 이식할 수 있다는 큰 장점이 있음
- 이 프로젝트 덕분에 Mac, Windows, Linux뿐 아니라 Android와 Nintendo Switch에서도 실행 가능한 것으로 보임
- 원 개발자에게 비용을 지불할 수 있다면 지불하고 싶지만, 특히 Full Tilt 버전 게임 데이터 다운로드의 합법성에는 우려가 있음
- 해당 데이터는 상용 제품에 포함된 저작권 있는 아트와 데이터이기 때문임
- FOSS 라이선스로 만들어진 결과물을 선호하더라도 현실이 항상 그렇게 작동하지는 않으며, 좋은 것을 만드는 사람들이 보상받아야 더 많은 좋은 결과물이 나온다고 봄
독점 소프트웨어와 소스 코드 에스크로
- 소프트웨어 보존도 중요한 목표임
- 이상적으로는 이런 독점 소프트웨어가 어떤 형태의 소스 코드 에스크로에 들어갈 수 있어야 함
- 원 저작권자가 제품을 판매하는 동안에는 그 권리가 존중되어야 함
- 하지만 판매를 중단하기로 선택했다면, 사용자가 자신이 쓰는 소프트웨어를 개선하고 유지할 수 있도록 코드가 FOSS 라이선스로 전환되는 방식이 바람직함
- 이런 방식은 창작자 권리, 사용자 권리, 보존이라는 목표 사이의 균형을 맞추는 데 도움이 될 수 있음
-
Homepage
-
Tech blog
- Linux에서 Space Cadet Pinball