>
Game Develop/Etc

울펜슈타인 에너미테러토리 소스코드를 비주얼 스튜디오로 디버그해보자

준비물 : 비주얼스튜디오2010(2015에서 업그레이드하고 돌려봤는데 됩니다)

울펜 ET

울펜 ET 소스코드


원래 둠3 소스를 보려고 했는데 둠3가 없어서 눈물을 머금고 울펜 ET를 선택하였습니다 ㅠ(뭐 어두운 곳에서 받을수는 있겠지만 귀찮네요)

울펜 ET는 개발도중 개발취소가 되면서 멀티플레이부분만 따로 떼서 무료로 공개된 게임입니다

c를 사용하였고(c++이 아닙니다... 클래스 없어요 ㅠㅠ)

퀘이크 엔진이기때문에 오픈지엘을 사용하였습니다

엄청 옛날게임이긴한데 어떻게 구조가 이뤄졌는지 궁금하기도 하고 요즘겜은 소스파일이 너무 많아서(이것도 꽤 많아요 ㅠ) 포기할꺼 같아서 한번 살펴보려고 합니다


일단 소스코드 압축도 풀고 게임을 설치했다는 가정하에서 시작하겠습니다

솔루션 파일인 wolf.sln 파일을 열어서 일단 디버그버전 빌드부터 해봅시다


시작프로젝트가 spline프로젝트이군요?

이 프로젝트는 정적라이브러리 프로젝트입니다

게임 실행파일을 만드는 wolf프로젝트를 시작프로젝트로 설정합시다

그리고 Ctrl + F5 키를 눌러 디버그로 빌드를 해주면 오류가 뜹니다(환경에 따라서 안뜰수도 있습니다)

(당연히 모든 프로젝트는 아니지만 다른 프로젝트들도 빌드가 함께 되도록 이미 설정되어 있습니다)


이렇게 말이죠...

오류가 54개나 되네요 ㅂㄷㅂㄷ

하지만 저기에 뜬것처럼 별거 아닙니다


따옴표가 제대로 표시가 안되고 물음표로 표시된다든지 따옴표가 누락되었다든지 해서 그렇습니다 (',")

언어 코드쪽이 뭔가 안맞아서 그런거 같아요

끝에 2개는 물음표만 있는데 https://github.com/id-Software/Enemy-Territory/blob/master/src/client/cl_keys.c 여기서 참고하면서 해당 문자로 바꿔줍시다

오류를 따라가서 따옴표 표시만 다시 제대로 해주시고 다시 빌드해봅니다

그러면 오류없이 빌드가 완료 되고 F5를 눌러서 한번 디버그로 실행을 해봅시다


이렇게 오류가 뜹니다.

이게 문제가 프로젝트명하고 생성되는 파일명하고 알맞지 않아서 그래요

이 문제는 프로젝트 속성에서 아웃풋되는 파일 이름을 et.exe로 바꾸면 됩니다

이 경우에 컴파일 에러? 같은게 뜰수도 있는데 프로젝트를 다시 빌드해주시면 됩니다


실행은 되는데 콘솔에 저런 에러가 뜨네요?

저건 게임의 pk3 파일들이(에셋, 데이터가 들어있는 압축파일) 없어서 그렇습니다

울펜 et를 설치한 폴더에 가면 etmain이라는 폴더가 있습니다

그 폴더를 저 콘솔에 뜬 경로에 맞춰서 복사하시면 됩니다


그런다음에 다시 디버그를 해보면

저렇게 게임이 실행됩니다 +ㅁ+(맨 처음에는 플레이어 이름이랑 인터넷 타입을 설정하셔야 메인메뉴에 들어가집니다)

직접 중단점도 한번 걸어보시고 하면 좋을거 같습니다

et legacy라고 요즘에 맞게 리마스터링 된게 있는데 한번 그것도 찾아보셔서 비교하셔도 좋을꺼 같아요(구글에 치면 금방 나옵니다)


솔직히 별거 없어서 왠만한 분들은 제가 쓴글은 안보시고도 잘 고치실수 있으실겁니다


,

최근 댓글

최근 트랙백

알림

이 블로그는 구글에서 제공한 크롬에 최적화 되어있고, 네이버에서 제공한 나눔글꼴이 적용되어 있습니다.

태그

카운터

Today :
Yesterday :
Total :