1991년 클래식 ‘Gorillas’를 Python으로 다시 만들고—Snapcraft 여정을 살아남았다
Source: Dev.to
The Nostalgia Hit 🍌
스카이라인 위에 서서 서로에게 폭발하는 바나나를 던지는 두 마리 고릴라를 기억하시나요? 저는 파이썬과 Pygame을 사용해 고전 QBasic Gorillas 를 다시 만들면서 그 감성을 되살리기로 했습니다.
Features include:
- 무작위로 생성되는 도시 스카이라인
- 포물선 물리(중력이 강력합니다)
- 맞으면 반응하는 고전적인 태양
- “현대적인” 레트로 느낌을 위한 화면 흔들림
The Tech Stack
Language
Python 3.12
Library
Pygame (2D 렌더링을 위한 무거운 작업 담당)
Distribution
Snapcraft (Ubuntu Snaps)
The “Snap” Struggle is Real 🛠️
리눅스용 패키징은 모험이었습니다. 가상 환경을 건드리지 않고 누구나 쉽게 설치할 수 있게 하고 싶었지만, 가능한 모든 장벽에 부딪혔습니다:
- Python Plugin: 깨끗한 컨테이너 안에서 인터프리터가 정상 동작하도록 만드는 것이 까다로웠습니다.
- Confinement: 클래식 confinement 으로 전환하는 것이 다양한 배포판에서 오디오와 비디오 드라이버가 원활히 작동하도록 하는 핵심이었습니다.
- Destructive Fix: 로컬 컨테이너가 고집을 부릴 때
--destructive-mode를 사용하는 방법을 배웠습니다.
How to Play
리눅스를 사용 중이라면 지금 바로 시도해 볼 수 있습니다 (스토어 승인을 기다리는 중이지만, 소스에서 직접 빌드할 수 있습니다!):
git clone https://github.com/davdomin/gorillas-retro-remake
python3 src/main.py
What’s Next? 🚀
현재 IP 연결을 통한 멀티플레이어 모드를 추가하는 것을 고민 중입니다. 1991년 리메이크에 과한가요? 그럴 수도 있겠지만, 코딩은 분명 재미있을 겁니다.
Check out the code here: