
Сообщение от
kirgre
Кабьянс, вообще верхом логики будет усложнение цепочки строительства: Лес - Лесоруб - Древесина - Плотник - Доски - Строитель - Молотки. Вводя 2 элемента, получаем усложнение экономики, вводится товар низкой степени обработки (доски), которым торговать будет явно более выгодно, чем просто лесом. Кроме того, доски нужны будут в строительстве кораблей, что логично, т.к. Корабль перегонкой камня в стройматериалы не построить. Ведь сейчас, насколько я понимаю, молотки получаются и из камня, и из дерева, что позволяет клепать корабли, просто обтёсывая камень, которого всегда много, а лес можно и вырубить ненароком.
Спасибо, kirgre, за весьма ценное замечание.
Если честно, то я стараюсь избегать слишком сложных логических цепочек. Игроку они предельно понятны, но ИИ туп до безобразия. Попытки его улучшить, научив делать простейшие вещи, предпринимались многократно несравненно более профессиональными моддерами, чем я, но всякий раз возникали простейшие для человека ситуации, где ИИ принимал совершенно идиотские решения. В этом контексте совершенно логичная для человека цепочка
Лес - Лесоруб - Древесина - Плотник - Доски - Строитель - Молотки
может оказаться абсолютно недоступной для понимания ИИ.
Для чего я ввожу камень? Для того, чтобы можно было строить городскую инфраструктуру там, где нет древесины, к примеру, в горах. Вроде пока логично.
Но "древесина" (а следовательно и вводимый мной "камень") по логике разработчиков игры является источниками "молотков", то есть фактически "величиной трудозатрат на производство или строительство" чего-то.
Пока речь идет только о древесине, то проблем естественно нет никаких. Из нее можно строить как здания, так и корабли. В этом случае при строительстве расходуется древесина (перерабатывается в молотки) и в итоге появляется, к примеру, здание или корабль. Все логично и понятно.
В случае же с "камнем" (как источником "молотков") "строительство здания" из камня совершенно нормальное явление, а вот появление "корабля" выглядит более чем странно. Я абсолютно согласен, что
Корабль перегонкой камня в стройматериалы не построить.
Но надо ли для этого дополнительно вводить доски? Вспомните, как строили корабли на старых верфях. По-моему, в фильме "Сказ о том, как царь Петр арапа женил" есть эпизод, когда бревна распиливали на доски непосредственно на верфи. Но "бревна" в игре это как раз и есть "древесина".
Поэтому самое простое решение - ввести требование по расходу древесины на строительство корабля. К примеру в CIV4UnitInfos.xml прописать для корабля (галеон) дополнительные строки по YIELD_LUMBER:
Код:
<UnitInfo>
<Type>UNIT_GALLEON</Type>
.......
<PrereqBuilding>BUILDINGCLASS_DRYDOCK</PrereqBuilding>
.....
<YieldCosts>
<YieldCost>
<YieldType>YIELD_LUMBER</YieldType>
<iCost>300</iCost>
</YieldCost>
<YieldCost>
<YieldType>YIELD_HAMMERS</YieldType>
<iCost>300</iCost>
</YieldCost>
<YieldCost>
<YieldType>YIELD_TOOLS</YieldType>
<iCost>100</iCost>
</YieldCost>
</YieldCosts>
Таким образом, чтобы построить галеон необходимо иметь 300 единиц древесины, трудозатраты ("молотки") на строительство - 300 молотков, плюс необходимо потратить 100 единиц инструментов. Если есть только камень, то трудозатраты (300 молотков) можно получить, но без 300 единиц древесины галеон на воду спущен не будет.
При этом кстати появляется возможность переполнения "городского склада", поскольку на момент окончания строительства галеона на нем надо иметь как минимум 300 единиц древесины. Но эта проблема легко обходится. Для строительства галеона необходимо иметь верфь, точнее "сухой док".
Код:
<PrereqBuilding>BUILDINGCLASS_DRYDOCK</PrereqBuilding>
Поэтому в CIV4BuildingInfos.xml для
Код:
<Type>BUILDING_DRYDOCK</Type>
необходимо изменить объем хранения (YieldStorage) в данном здании заменив "0" в строке
<iYieldStorage>0</iYieldStorage>
на "300"
<iYieldStorage>300</iYieldStorage>
При таком раскладе мы можем обойтись без досок.