주의 : 이 모드는 오리지날, 유럽해의 해적, 베니스용 모드입니다. 르네상스에는 이 모드를 적용하지 마세요.. 르네상스를 플레이 하고시픈 분들은 Young CheatMod Unified를 받아서 설치를 하시기 바랍니다. 이 모드에 나이를 조정하는 모드를 포함시켜놓았습니다. 유럽해의 해적을 사용하시는 분들도 Young Cheatmod Unified에 포함된 나이를 조정하는 모드를 사용을 하시는게 더 편하실겁니다.

 

턴 모드를 한 번 분석해보려고 하다가 그냥 만들었습니다.. 실력이 많이 늘었네요.. 이제 이런것도 만들어내고..

턴 모드 정말로 야리꾸리 하네요.. 이게 더길드에서 제공하는 함수중 ScenarioSetYearsPerRound()라는 함수를 기본적으로 사용을 해서 하는건데.. 이 ScenarioSetYearsPerRound() 함수가 엉망이네요.. 디폴트는 ScenarioSetYearsPerRound(4) 로 되어 있어서 4년 턴제로 사용을 하는데.. 이 안에 다른 숫자를 넣을 수가 있습니다... 여기에 1을 넣으면 1년 턴제로.. 2를 넣으면 2년 턴제로 가야 하는거겠지요.. 그런데 여기에 4가 아닌 1이나 2를 넣었을때는.. 이 년도가 요동을 치는군요.. 실제로 1년 턴제로 했을때의 연도가 이렇습니다..

표시연도 내부연도

1400       1400
1401       1402
1402       1404
1403       1406
1404       1404

위와 같이 달라집니다.. 나이는 왼쪽의 게임 표시연도가 아닌 오른쪽 게임의 내부 연도의 영향을 받습니다.. 그러니까 나이가 아래와 같이 바뀌게 되지요..

표시연도 나이
1400       17
1401       19
1402       21
1403       23
1404       21

쩝.. 2년 턴제를 적용을 해도 위와 비슷한 상황이 발생을 하는군요.. 더길드.. 완전히 버그덩어리네요.. 뭐 이걸 억지로 잡으려고 하면 잡을수는 있습니다.. 이렇게 격변하는 연도와 나이를 그나마 잡아놓은게 SilverDK님이 만든 턴제모드이기는 한데.. 이런 상황이라면.. 억지로 나이를 잡으려고 했을때 부작용이 있을 수 밖에 없을 것 같습니다...

뭐.. 그래서 게임 연도는 그냥 포기하고.. 2년에 한 살씩.. 또는 4년에 한 살씩 먹는 방법을 택해서 한 번 만들어보았습니다..


세 가지고요.. 아예 나이를 안 먹게 하는 것하고.. 게임 연도 2년에 한 살씩 먹는 것 하고.. 게임연도 4년에 한 살씩 먹는 것하고 있습니다.. 단 아이들의 경우에는 게임연도 1년에 한 살씩 정상적으로 나이를 먹습니다.. 애기들은 좀 빨리 빨리 커야 할 것 같아서요.. 2년.. 또는 4년에 한 살씩 먹는다는게 좀 이상하기는 한데.. 그거 이상한 것 빼면 부작용도 없고.. 턴제로는 가장 무난한 것 같습니다. 나중 가면 부모와 자식의 나이가 똑같아지는 경우가 생길수도 있는데.. 뭐.. 그건 알아서들..

C:\Program Files\The Guild 2 - Pirates of the European Seas\Scripts\City 폴더에 덮어씌워주세요.. 원본 백업하는것 잊지 마시고..

---------------------------------------------------------------------------

090821 수정본입니다.. 업데이트 내용 밑으로 나갑니다.

Config.ini 파일의 내용을 바꿔주셔야 합니다... Config.ini 파일의 [GAME] 섹션 밑에 아래의 내용을 추가해주세요..


// 추가할 내용 시작 여기서부터 추가해주세요
// 한 라운드에 몇 살씩 먹도록 할 것인지를 설정합니다.
// 0 = 나이를 먹지 않음, 1 = 1살, 2 = 2살, 4 = 4살
AgesPerRound = 4

// 위의 한 라운드 나이먹는 모드를 적용할 대상을 설정합니다.
// 0 = 모든 심들, 1 = 사용자 가문의 모든 심들, 2 = 사용자가 컨트롤 하는 플레이어
AppliedSims = 0

// 위의 나이먹는 모드를 적용이 시작되는 나이를 설정합니다
AppliedAge = 0
// 추가할 내용 끝 여기까지 추가해주세요


위와 같고요.. 위에 설명이 된 대로.. AgesPerRound는 4개의 옵션을 둬서 나이를 먹지 않는 것부터 한 라운드에 4살씩 나이를 먹는 것까지...

그리고 나이 먹는 모드 밑에 어떤 분이.. 자신의 캐릭터한테만 이 모드를 적용시킬 수 있느냐고 물어보셔서.. 또 옵션을 3개로 쪼개서.. 0이면 모든 심들이 동일하게 적용을 받고.. 1이면 사용자 가문의 모든 심들과 사용자 가문의 고용인들까지만 적용을 받고.. 물론 적용이 안 되는 다른 심들은 1 라운드에 4살씩 먹게 되겠지요.. 마지막으로 2를 선택하면 사용자가 컨트롤 할 수 있는 3명의 캐릭터만 적용이 되도록 해 보려고 합니다...

마지막으로 이 모드가 적용이 되는 나이 부분인데요.. 어떤 분들은 아이들이 크는게 너무 더디다는 분들도 계시고.. 어떤 분들은 아이들도 어른들과 동일한 조건에서 나이를 먹도록 원하시는 분들도 계셔서.. 이 옵션이 적용되는 나이를 설정하도록 했습니다.. AppliedAge를 16으로 설정을 하면 16살부터 이 모드가 적용이 되고.. 아이들도 이 모드의 적용을 받게 되기를 원하신다면.. 이 변수를 0로 설정을 하시면 되겠네요..

이렇게 바꾸시면.. 원하시는대로 모드를 적용을 시키실 수가 있으셔서.. 선택의 폭이 넓어질 것 같습니다..

또 스크립트를 변경시키는 것이 아니기 때문에.. 혹시 게임을 실행 중에 조건을 바꾸고 싶어 졌을 때.. Config.ini 파일의 내용을 바꾸시면 기존의 세이브 파일에도 아무런 무리 없이 적용이 됩니다.

혹시 config.ini 파일을 편집하는게 어렵다고 느껴지시는 분들은 그냥 같이 포함된 config.ini 파일을 C:\Program Files\The Guild 2 - Pirates of the European Seas 폴더에 덮어씌워주시면 됩니다..

그리고 같이 포함되어 있는 CityPingHour.lua 파일을 C:\Program Files\The Guild 2 - Pirates of the European Seas\Scripts\City 폴더에 덮어씌워주세요..

아.. 그리고 제가 멀티를 안 하기 때문에 멀티쪽은 사실 신경을 안 썼었는데.. 멀티 플레이를 즐겨하시는 분들... 모드 적용하지 마십시오.. ^^; 모드를 적용하시면 멀티플레이가 안된답니다.

 

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

Posted by yyht
,