FfH2의 드워프들은...구성 자체(병력이든 건물이든)는 개성이 있는데...
개성만 있지, 성능이 워낙 내세울 만한 것이 못되는 고로, 도저히 기를 펴지 못한다.
이 둘은 나란히 장궁병을 보유하고 있지 않기 때문에--; 도시를 지켜내기도 버겁다.
드루이드와 그림자가 초절한 성능을 보유하고는 있다만...
걔네들 뽑기 전에 우선 생존을 걱정해야 하는 처지라서 말이야--;

특히 카자드의 경우...도비엘로가 없었다면 최고의 암울 문명이었을 정도이지--;
견습 마법사급을 넘어서는 마법사들의 보유가 불가능하다는 것은...
파이어볼 하나 쓰는데도 영웅의 힘을 빌려야 한다는 얘기가 되기 때문이다.

러취프는...그래도 마법사들을 제대로 쓸 수 있다는 점에서 카자드보다 숨은 조금 더 쉴 수 있긴 한데...
진영 영웅이 사실상 없는 셈이고;; 주력 유닛들도 오래 쓰지 못할 녀석들로 구성되어 있다는 것이 문제이지.
골렘이 승급을 못하는 탓에 경험치를 쌓아봐야 더 강해지는 것도 아니고,
저질 골렘을 고급 골렘으로 업그레이드 시킨다거나 하는 것도 불가능...
바낙서스가 강해지면 골렘 전체가 조금씩 강해지기는 하는데...역으로 바낙서스가 누으면 모든 보너스가 싸그리 날아간다는 점 때문에 함부로 굴리기도 뭣하지.
뭐 살리기야 용이하지만, 처음부터 다시~가 되는 통에...쩝쩝
건물 잘 지어서 골렘들이 파이어2를 달고 나오기 시작하면 세상이 달라지기는 하는데...

강화의 우선 순위는 더 암울한--; 카자드가 먼저겠으나,
일단 골렘 일당부터 먼저 강화시켜 보자고. 카자드는 어떤 수단을 써야 할지 조차(마법 강화? 유닛 강화? 내정 강화? 총체적 난국...) 논의가 필요하니...

골렘에게서 제일 배아픈 사태는 일단...필연적으로 뽑아는 놨지만 먹어도 소용없는 경험치 문제가 있겠지.
이걸 골렘들에게 일정 경험치를 소모하여 승급을 달아주는 주문을 만들어 줄 수도 있는데...이러니까 손쉽게 먼치킨화 하더구만.(마개조의 훈련하기 주문같은;;)
그래서 다른쪽의 강화...바낙서스에 보너스를 주기로 하지.

턴마다 바낙서스가 살아있을 경우, 모든 골렘에게 승급 초기화/재부착이 이루어진단 말이야?
이 과정은 바낙서스가 살아있으면이 조건이므로, 사실 턴랙을 피할 방법은 없어--;
그럼 이왕 턴랙 생기는거...일을 좀 더 시키자 하는 거야.

자 우리들의 친구 이벤트매니저...가 아니라, 오늘은 CustomFunctions.py 파일을 열어보자. 뭐 얘도 몇번은 열어 봤잖아...
귀찮으니까 처음부터 색을 넣어서...

def doTurnLuchuirp(self, iPlayer):
pPlayer = gc.getPlayer(iPlayer)
if gc.getPlayer(iPlayer).getUnitClassCount(gc.getInfoTypeForString('UNITCLASS_BARNAXUS')) > 0:
py = PyPlayer(iPlayer)
pBarnaxus = -1
bEmp1 = False
bEmp2 = False
bEmp3 = False
bEmp4 = False
bEmp5 = False
iBarnaxus = gc.getInfoTypeForString('UNITCLASS_BARNAXUS')
iCombat1 = gc.getInfoTypeForString('PROMOTION_COMBAT1')
iCombat2 = gc.getInfoTypeForString('PROMOTION_COMBAT2')
iCombat3 = gc.getInfoTypeForString('PROMOTION_COMBAT3')
iCombat4 = gc.getInfoTypeForString('PROMOTION_COMBAT4')
iCombat5 = gc.getInfoTypeForString('PROMOTION_COMBAT5')
iEmpower1 = gc.getInfoTypeForString('PROMOTION_EMPOWER1')
iEmpower2 = gc.getInfoTypeForString('PROMOTION_EMPOWER2')
iEmpower3 = gc.getInfoTypeForString('PROMOTION_EMPOWER3')
iEmpower4 = gc.getInfoTypeForString('PROMOTION_EMPOWER4')
iEmpower5 = gc.getInfoTypeForString('PROMOTION_EMPOWER5')
iGolem = gc.getInfoTypeForString('PROMOTION_GOLEM')

lGolems = []
for pUnit in py.getUnitList():
if pUnit.getUnitClassType() == iBarnaxus :
pBarnaxus = pUnit
elif pUnit.isHasPromotion(iGolem) :
lGolems.append(pUnit)
if pBarnaxus != -1 :
bEmp1 = bool(pBarnaxus.isHasPromotion(iCombat1))
bEmp2 = bool(pBarnaxus.isHasPromotion(iCombat2))
bEmp3 = bool(pBarnaxus.isHasPromotion(iCombat3))
bEmp4 = bool(pBarnaxus.isHasPromotion(iCombat4))
bEmp5 = bool(pBarnaxus.isHasPromotion(iCombat5))
for pUnit in lGolems :
pUnit.setHasPromotion(iEmpower1, False)
pUnit.setHasPromotion(iEmpower2, False)
pUnit.setHasPromotion(iEmpower3, False)
pUnit.setHasPromotion(iEmpower4, False)
pUnit.setHasPromotion(iEmpower5, False)
if bEmp1:
pUnit.setHasPromotion(iEmpower1, True)
if bEmp2:
pUnit.setHasPromotion(iEmpower2, True)
if bEmp3:
pUnit.setHasPromotion(iEmpower3, True)
if bEmp4:
pUnit.setHasPromotion(iEmpower4, True)
if bEmp5:
pUnit.setHasPromotion(iEmpower5, True)
pPlayer.changeGold(pUnit.getExperience() * 10)
pUnit.setExperience(0, -1)

자 덧붙인 부분이 하는 일은, 골렘들이 가지고 있는 경험치를 모두 토해내고, 그 열배에 해당하는 자금을 얻게 하는 거야.
어차피 경험치 가지고 있어봐야 하는 일도 없는데, 돈이나 벌자는 취지에서 이렇게 고친 것이지.
근데, 돈있다고 바낙서스를 지켜줄 수 있는 건 아니란 말이야?(장비를 살 수 있는 것도 아니고...)
그러니까...저 경험치를, 바낙서스에게 몰아주는 거지!
아 뭐 1:1의 교환비를 줘서야 바낙서스가 깡패가 될게 뻔하니까...비율은 조절하자고. 일단 반으로 할께. 붉은색 두줄만 다음과 같이 바꿔보자.

      if pBarnaxus == -1:
pPlayer.changeGold(pUnit.getExperience() * 10)
         else:
pBarnaxus.changeExperience(pUnit.getExperience() / 2, -1, False, False, False)
pUnit.setExperience(0, -1)
 
매턴 경험치 터는 것은 똑같은데, 그 턴 경험치를 가지고 뭘 할 것인가만 다른거지.
 바낙서스가 없으면 여전히 경험치당 자금10으로 환전해 주는거고,
 바낙서스가 있으면 턴 경험치의 반을 바낙서스에게 전이해 주는 거야.


쓸모가 있으려나?
턴랙이 조금이라도 더 늘어나는게 싫어요~란 사람은...할 수 없지 뭐...
 
죠니 사사키가 작성한 글입니다.
,