#26: Scripts(Taming the Monster) - 스크립트 : 괴물 길들이기
제 소개부터 하겠습니다.
전 Lars Maischak이고 아이디는 Helius이며, 스크립트 팀을 이끌고 있습니다.
역사 박사학위가 있으며 캘리포니아 주립대에서 가르치고 있습니다.
본 일지는 모든 게이머에게 유익하겠지만 특히 모드제작자는 꿈의 환경을 보실 겁니다.
오늘은 전반적인 소개까지만 하겠습니다.
마그나문디 모드를 게임으로 만드는 것은 쉽지 않았습니다.
원래 모드가 그렇듯이 모두 스크립트로 되어 있었기 때문입니다.
비전문가를 위해 설명하자면 "script"는 게임엔진에 지시사항을 주는 텍스트 파일입니다.
반면에 "engine"은 게임의 본질적인 장치이며 수정할 수 없는 exe 파일입니다.
Davis, Calos와 저는 메가바이트 분량의 스크립트를 짰습니다.
카톨릭교회, 신롬제국, 북아프리카해적 등의 모드 하위시스템은 복잡한 코드의 집합체였습니다.
가끔은 기발하게 구현되었으나, 더 빈번하게는 어정쩡한 꽁수로 엔진을 조정했습니다.
마그나문디를 게임으로 개발하게 되면서 엔진의 소스코드를 받았습니다.
이제 오직 프로그래머의 능력만이 한계입니다.
개발 초기부터 팀의 방침은 스크립트가 하던 것을 엔진에 심어서,
우리가 수년간 그토록 힘들게 개발했던 스크립트를 필요없게 하는 것이었습니다.
예를 하나 들자면 모드는 행정효율이라는 개념을 도입했습니다.
모드에서는 코드가 정말 미친듯이 복잡했었습니다.
행정효율의 구현은 게이머에게는 보이지 않는 이벤트로 비효율적으로 처리되어
게임속도가 느려졌었습니다.
이제 행정효율 스크립트는 전문용어로 '엔진으로 포팅' 되었습니다.
스크립트가 어정쩡하고 끊기는 방식으로 했던 것을 이제 엔진이 부드럽고 순식간에 처리합니다.
이처럼 스크립트 팀의 주요임무는 이전의 스크립트를 불필요하게 하는 것이었습니다.
Magna Mundi Ultimate의 모든 이벤트, 디시젼, 미션은 221개 파일에 23.5MB 였습니다.
현재 마그나 문디 게임은 232개 파일에 12.9MB 입니다.
적을 수록 좋은 것이며, 이는 매우 큰 성과입니다.
위의 숫자는 또 다른 중요한 성과를 간과합니다.
EU3의 엔진이 내부적으로 처리했던 것을 '스크립트로 노출' 시켰습니다.
무슨 뜻이냐면 계산은 엔진이 하고 지시사항은 스크립트가 주는 것입니다.
엔진이 순수계산에서는 더 빠르므로 스크립트가 더 작아도 더 많은 걸 할 수 있습니다.
'스크립트로 노출' 된 예를 common/defines.txt로 보여 드리겠습니다.
게이머가 상인 혹은 선교사를 보내는 비용, 성 수비대 규모, 군사유닛 이동속도 등을 손쉽게 바꿀 수 있습니다.
Divine Wind의 defines.txt에는 56개 항목이 있습니다.
마그나 문디에서는 400개가 넘으며 게이머가 쉽게 바꿀 수 있습니다. :

400개 이상의 값을 마음대로 조정할 수 있습니다.
전투 종류 별로 변수값을 확인할 수 있습니다.

같은 파일의 파벌 부분입니다. 바꿀 수 있는게 많습니다!
그 외에도 엔진에 숨겨져 있던 많은 공식들이 이제 스크립트에 나와 있습니다. :

여기에서는 차입을 정의할 수 있습니다. 몇 개까지 가능하고 어떤 조건인지 원하시는 대로!
그렇습니다. 이건 마그나문디이고 당신이 우리를 이겨보시길 바랍니다!
더 잘 만들어 보세요!
지금까지의 일지를 읽으신 분들은 마그나문디 게임이 기존 모드의 시스템을 모두 유지하고 개선시키는 뿐만이 아니라
더 많은 내용을 더한 것을 눈치채셨을 겁니다.
더 복잡해지고, 내용이 깊어진 것이 가능했던 것은 엔진을 확용한 덕분입니다.
덕분에 프랑켄슈타인 괴물로 비유되었던 모드가 살아있는 멋진 생명체로 내년 초에 살아날 것입니다.
첫댓글 결론1 : 마그나문디 게임이 기존 모드보다 더 빨리 돌아간답니다. @.@
그 동안 게임사양 걱정 많이 하셨죠? 문제 없습니다~
결론2 : 모드제작자의 꿈나라입니다.
ㄷㄷㄷㄷㄷ 아예 새로운 게임을 하나 따로 만드는 듯
빨라진다고? 그럴리가! 일단 나와야알겠죠
난 여기서 나가야겠어! 버틸 수가 없어!
올 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ