처음에는 완소...까지는 아니라도 꽤 중요하고,
중반에도 아직 전쟁을 벌일 것까지 없을 때 중요하고,
전쟁난 이후에는 빠른 확보가 필요하지만...
...후방에서는 전혀 필요 없는 것?

바로 문화 수치이지.
물론 문화 승리는 제외하지만...극한의 SM플레이(도비엘로 원시티라던가;;) 중이라서 수단 방법을 가리지 않고 클리어 해야된다라면 모를까...
어지간하면 문화승리로 끝내면 재미가 없잖아? 뭐, 발제라프의 경우 몇턴내에 문화 승리로 끝내기 같은 도전을 스스로 해본다던가 하는 것도 재미는 있을까...

이 문화 수치를 이용하여 뭔가 나쁜 짓을 해보는 시간을 마련하겠다.
일단은...주문의 형식으로...

CIV4SpellInfos.xml

        <SpellInfo>
            <Type>SPELL_ZZZ</Type>
            <Description>TXT_KEY_ZZZ</Description>
            <Civilopedia>TXT_KEY_SPELL_PLACEHOLDER_PEDIA</Civilopedia>
            <bInBordersOnly>1</bInBordersOnly>
            <bInCityOnly>1</bInCityOnly>
            <bHasCasted>1</bHasCasted>
            <PyResult>spellZZZ(pCaster)</PyResult>
            <PyRequirement>reqZZZ(pCaster)</PyRequirement>
            <Effect>EFFECT_SPELL1</Effect>
            <Sound>AS3D_SPELL_INSPIRATION</Sound>
            <Button>Art/Interface/Buttons/Promotions/Hero.dds</Button>
        </SpellInfo>
아이콘이 좀 거시기한데, 그거야 뭐 아무거나 더 어울리는 것을 쓰면 되겠지...

CvSpellInterface.py

def reqZZZ(caster):
pPlot = caster.plot()
pCity = pPlot.getPlotCity()
iPlayer = caster.getOwner()
iCulture = pCity.getCulture(iPlayer)
if iCulture < 120000:
return False
return True
원래는 도시 문화도를 게임 스피드에 따라 조절해야 하는데...귀찮아서;; 일단 도시 문화도가 12만 이상이어야 쓸 수 있다는 소리지.

def spellZZZ(caster):
pPlot = caster.plot()
pCity = pPlot.getPlotCity()
iPlayer = caster.getOwner()
pPlayer = gc.getPlayer(iPlayer)
pCity.changeCulture(iPlayer2, -100000, True)
여기까지는 필수로 넣어야 할...도시의 문화도를 깎는 부분...문화도를 다 깎으면 안되니까 적절히 남길 필요가 있겠지.
그 뒤는 취향에 맞게 다음 중에 골라서 넣어보자. 이어서 붙이면 된다. pPlayer를 안쓰는 경우(1,2번) 위에서 지워도 되겠지.
당연히 전부다 넣으면 캐사기다--; 아니 이미 이 주문을 만드는 순간부터 그런가...

1. 마네 한마리 얻기(불모의 특성을 인페르날 외의 문명에서도 쓰고 싶다면...뭐 전에도 다룬 일 있지?). 하필 마네인 이유는, 인구를 늘리는 데도 쓰잖아 얘는...
iManes = gc.getInfoTypeForString('UNIT_MANES')
iX, iY = pPlot.getX(), pPlot.getY()
newUnit = pPlayer.initUnit(iManes, iX, iY, UnitAITypes.NO_UNITAI, DirectionTypes.DIRECTION_NORTH)

2. 그냥 돈으로...물론 비율은 형편없게 만들어야 말이 되겠지. 1%...천원만 주자. 너무 적으면 늘리던지...
pPlayer.changeGold(1000)

3. 도시에 공짜 전문가 추가하기...일단 밸런스를 위해, 그대로 음유시인을 하나 늘리는 것으로. 이러면 음유시인이 음유시인을 낳게 되려나...
iBard = gc.getInfoTypeForString('SPECIALIST_ARTIST')
pCity.changeFreeSpecialistCount(iBard, 1)

4. 유닛에 경험치 주기. 음 인구수를 소모하는 것에 비해 확실히 좀 덜 아까울 수는 있을 듯. 소비 문화치를 줄이면 캐사기가 되니 그러지는 말자...경험치는 20쯤 줄까...
caster.changeExperience(20, -1, False, False, False)

텍스트 파일(CIV4GameText_FFH2.xml)은 알아서...뭐 이참에 전용 텍스트 파일을 하나 추가해 두는 것도...


뭐, 썩는 문화도가 아까운 사람이 한 둘 아닐거 같아서 써봤어^^;
 
죠니 사사키가 작성한 글입니다.
,