Stepmania(http://www.stepmania.com/)는 DDR이나 Pump it up!같은 댄스 시뮬레이션 게임입니다. DDR과 같은 4방향과 Pump it up! 같은 5방향을 모두 지원합니다. 실제로 Stepmania용 스텝도 인터넷에 많이 돌아다니고, 가정용 장판만 있으면 충분히 할 만한 수준입니다.


특히! 무엇보다 좋은 것은 오픈소스라는 것입니다. 누구나 소스를 열람하고 수정할 수 있습니다. 게다가 라이센스도 GPL이 아니라서 상업용으로 써도 무방합니다. 실제로 Stepmania기반 아케이드가 나온 적이 있습니다. 그것도 자그마치 Pump it up! 시리즈 중 하나로 말이지요. (정확히는 Pump it up! Pro 시리즈 입니다.) 이 외에도 상당히 스텝파일 지원폭도 넓어서 4방향 스텝인 DWI와 2000년대에 나온 Kick it up!(Pump it up! 클론 시뮬레이터)의 파일인 KSF도 지원합니다. 물론 지금은 대부분 *.Sm로 만들어지기는 합니다.


그런데 이 Stepmania가 윈도나 맥은 그냥 바이너리를 주지만 리눅스는 그냥 소스만 덜렁 내줍니다. 하다못해 RPM이나 DEB이라도 좀 주지... 그래서 리눅스에서 쓰기 위해서는 컴파일 작업이 꼭 필요합니다. 이번에는 그 짓을 해보도록 하겠습니다.


리눅스는 어디로 갔지? Any라고 써있으면서 소스만 주는 아...

1. 우선 Stepmania홈페이지에서 소스묶음을 다운로드 받습니다. http://www.stepmania.com/download/

여기에 보시면 위의 스크린샷과 같이 Any라 써있는 범용 소스코드(...)를 다운로드 받을 수 있습니다.

이것을 다운로드 받으면 됩니다. Windows도 Mac도 아니니 당연히 그렇지요.


2. 압축을 풀고 컴파일을 위한 패키지를 미리 설치합시다. 

터미널을 열고 다음과 같은 명령어를 넣으면 됩니다.


sudo apt-get install libasound2-dev libpulse-dev libmad0-dev libtheora-dev libvorbis-dev libpng-dev libswscale-dev libavutil-dev libavformat-dev libavcodec-dev libjpeg-dev libglu1-mesa-dev libgl1-mesa-dev libgtk2.0-dev xorg-dev libxrandr-dev libbz2-dev libglew1.5-dev automake1.10 build-essential curl g++ libfaac-dev libmp3lame-dev libx264-dev libxvidcore-dev


무진장 많은데 저 라이브러리를 다 쓰기 때문에 다 써먹어야 합니다. xorg-dev만 넣어도 알아서 다 따라온다고 하는데 그냥 넣어버리지요.


3. 위에서 다운로드 받은 덩어리(?)의 압축을 풀어서 해당 폴더에 쳐들어가 봅시다.

이 소스를 컴파일 한 뒤에 Songs 폴더를 포함해서 써먹어야 하는 파일들이 모인 곳이니 중요히 여기자. 문제생기면 또 컴파일하면 된다.


4. autogen.sh 파일을 실행하자. 

잠깐 터미널이 지나가고(터미널에서 실행을 안 해도 파일 변화가 보입니다.) Configure라는 스크립트가 생성됨을 알 수 있습니다.

위와 아래를 비교해보자. 약간의 변화가 느껴지는가?

5. configure를 실행해 봅시다. 이왕이면 터미널로 실행하는 것을 추천 드립니다. 만약 중간에 오류가 생기면 어디서 어떤 라이브러리가 부족한 것인지 알 수 있습니다.


6. 이제 터미널이 들어가야 합니다.

 터미널을 이용해서 해당 소스 트리로 들어갑시다. (cd ~~ 아시지요?)

그 다음 다음과 같은 명령을 내립시다.


make distclean

./Utils/build.sh -f -v -j2

(위의 -j뒤의 숫자는 스레드 수입니다. 듀얼코어면 2 쿼드코어면 4를 써주시면 됩니다.

그리고 -f는 동영상 지원용입니다. 만약 최신 소스를 사용하시면 이게 필요없습니다.


7. 이제 컴파일이 다 될 때까지 시간을 보냅시다.


한 번 지켜보자..왜인지 빨려들어갈 것 같은 기분이든다. 괜히 쳐다보지 말고 그냥 다른 짓을 하도록 하자.

8. ~/.stepmania-5.0/Songs 폴더에 내가 하고 싶은 음악들을 몰아넣자.

(그냥 소스트리의 Songs폴더에 넣어도 됩니다.)

특이하게도 폴더트리 구조가 

Songs------Jukebox1-----곡1폴더--곡과 스텝파일

               |                       |--곡2폴더--곡과 스텝파일

               |

               |--Jukebox2------곡3폴더


이러한 형태라서 폴더구조를 이중으로 만드셔야 인식이 됩니다.


9.  ~/stepmania-5.0/Themes 폴더에 내가 쓰고 싶은 테마를 넣자.

(그냥 소스트리의 Themes폴더에 넣어도 됩니다.)

여기는 이중구조 아닙니다. Themes 폴더안에 스킨(테마)하나 폴더 만들어서 그안에 압축풀어 넣으시면 됩니다.


10. 소스트리 루트에 있는 stepmania 파일을 실행하면 끝.

이 제 저것만 실행하면 끝!


11. 메뉴에 추가하거나 /bin에 링크를 만들어 넣는 것은 수동으로 해주시면 됩니다.(네 저 좀 무책임합니다.)



Q: 곡이나 테마파일은 어디서 구하냐구요?

A: 그냥 포럼을 뒤지세요. 상당히 좋은 곡들과 테마들이 넘쳐납니다. 특히 자작스텝의 경우, 개념있는 스텝도 있는 반면 미친듯한 극악의 스텝도 있습니다.

곡 : http://www.stepmania.com/forums/songs/

테마 :http://www.stepmania.com/forums/themes/


Q : 화면이 버벅거려요!

A : OpenGL이 잡히나요? 터미널에서 glxinfo 명령을 내린뒤에 장치가 soft renderer나 softpipe라던가 llvmpipe라던가... 이러면 느립니다. 옵션에서 해상도를 낮추고 이미지 품질을 낮추는 등의 일련의 작업이 필요합니다.


Q : 이거 돈받고 팔아도 되나요?

A : 프로그램은 돈 받고 팔아도 되는데(MIT 라이센스라네요.) 곡이나 테마는 저작권이 걸려있으면 못 팝니다. 물론 전부 자작이라면 가능합니다. 그런데 기본스킨도 저작권 있는것 아시나요?


Q : 발판은 어디서 파나요?

A : 옛날 DDR발판 중고로 구하셔도 되고 그냥 오픈 마켓 뒤지면 나옵니다. 어떤 분은 직접 만들기도 하시더군요. 책받침이나 PE(1T~1.5T정도) 사다가 알루미늄 테이프하고 전선가지고 조이패드나 키보드에 납땜해서 만들기도 합니다.


Q : 층간 소음 어쩌나요?

A : 저한테 묻지 마시고 아랫집하고 직접 이야기 하세요.


Q : 소스 컴파일하는데 너무 오래걸려요. 바이너리를 주세요.

A : 컴파일하는데 요즘 컴퓨터로 2분이면 충분합니다. 제 컴퓨터로 5분이면 컴파일 완료되던데요.


Q : 코나미가 소송 안 거나요? 안다미로는요?

A : 아니 뭘 이런 걸 다 신경쓰세요. 벌써 5.0인데 아직까지 별 소리 없는 것 봐서는 별 문제 없을 겁니다.


Q : 게임이 너무 힘들어요!저 살빠지면 책임지실거에요?

A : 이 사람이 진짜....

,