http://forum.jowood.com/showthread.php?t=150061&page=2

위의 사이트에 더길드의 스크립트 내용이 언급이 되는군요..

더길드의 모드는 스크립트에 기반을 두는 경우가 많은데.. 새로운 모드 스크립트를 적용을 하려면 이미 진행되어진 게임에서는 안됩니다.. 반드시 새로운 게임을 시작을 해야 하지요.. 그 이유가 궁금하지 않으신가요??

컴 퓨터 언어쪽으로 넘어오면.. 파일을 실행파일을 쓸 때 두 가지 개념이 있다고들 합니다.. Interpreting과 Compile.. Interpreting Language같은 경우는.. 따로 컴파일 하는 경우를 거치지 않고 실행파일의 소스를 그때 그때 읽어서 한 줄 한 줄 interpreting 하면서 실행하는 경우입니다.. 이러한 종류의 소스파일들을 보통 스크립트라고 많이 부릅니다... 뭐 가장 대표적인 스크립트 언어들이 인터넷 베이스에서 돌아가는 윈도우 계열의 asp나 리눅스 또는 유닉스 계열의 php 같은 경우네요..

반면 Compiled Language같은 경우에는 처음부터 원본 소스파일을 컴파일이라는 과정을 거쳐서 기계어로 바꾼 후.. 그 기계어로 바뀌어진 실행 파일을 실행하는 경우이지요.. 흔히 알고있는 확장자가 .exe 같은 파일들의 경우 이런 종류에 속합니다.

더길드의 스크립트들은 어떤 경우에 속할까요? 소스들이 더길드 안의 Scripts 폴더에 공개되어 있기는 하지만.. 제가 생각하기에 더길드의 실행소스는 스크립트가 아닌 컴파일이 아닌가 싶습니다.. 컴파일된 실행파일들의 경우에는 따로 interpreting을 하는데 소요되는 시간이 적게들기 때문에 실행속도 면에서 스크립트들에 비해서 빠릅니다. 반면에 인터프리팅 언어들의 경우에는 같은 파일을 실행을 시키더라도 매번 다시 인터프리팅 하는 시간을 가집니다.. 속도면에서는 컴파일 언어의 완승이지요.. 게임의 경우는 실행속도에 굉장히 민감한 경우가 많은데.. 그러한 게임 엔진을 만들면서 스크립트쪽을 쓴다는게 약간 이해가 안되지요?

더 길드의 경우는 처음 게임을 로딩하는 과정에서 Scripts 폴더에 있는 모든 스크립트들을 컴파일하는 과정을 거치는 것 같습니다.. 그리고 그렇게 컴파일된 데이타들을 게임을 세이브 할 때 세이브 데이타에 포함시키는 구조인 것 같아요.. 그러니까 세이브된 게임의 스크립트 자료들은 현재 내가 가지고 있는 스크립트 데이타들이 아닌.. 처음 게임을 시작할 때 가지고 있었던 스크립트 데이타인 구조가 되는 것이지요..

이러한 이유때문에 새로운 모드를 내려받고 그 모드를 적용시키려면 지금까지 진행해왔었던 게임을 포기하고 새로 게임을 시작해야 하는 상황이 되어버린 듯 합니다.

 

P.S.: 더 길드 2에 대해 더 자세하고 다양한 정보를 얻기 원하시면 네이버의 더길드 카페(http://cafe.naver.com/theguildz2)를 방문해 보세요.

Posted by yyht
,