重構縫合怪過程中發(fā)現(xiàn)的一些有趣的事情
前幾天將全文明特性mod重構了一下,現(xiàn)已發(fā)布,mod名稱:
New Khmer All Civ Bonus and UUs
重構過程中我把全文明特性以及科技的實現(xiàn)方式在AGE里面都瀏覽了一遍,發(fā)現(xiàn)了很多有趣的事情,在這里就記一下流水賬,分享一下。
前置知識1:簡單來說,一個科技的結構分為前置科技需求、研發(fā)時間圖標地點、科技效果、適用文明、價格這些主要部分。文明屬性加成也可以通過這個機制實現(xiàn)(免升科技)

在印度王朝DLC出來的第二個更新中,斯拉夫的銀冠東正教被羅斯堡壘取代,但是它的效果仍然在發(fā)揮余熱,孟加拉的僧侶防御加成直接用了這個效果

最開始覺得勃艮第提前一個時代升級這個功能不會,看了以后才知道用的手法,添加一個文明專屬的科技,與下一個時代升級并列作為前置條件即可


另外,率先用到提前升級的我剛開始沒意識到,其實是庫曼的攻城武器廠。
勃艮第經濟科技提前升級并打折但是沒有其他文明免升加持的還剩兩個科技:刺網以及大篷車,其中刺網還被越南把木材免了,食物不僅有勃艮第打折,還有意大利的打折
如果要改一個單位的價格或通用屬性,通常得把整個升級線的屬性都改掉,比如縫合怪需要大莊園駐扎羊,就需要先讓磨坊和大莊園都能駐扎羊,因為大莊園是磨坊升級來的。
一些針對建筑生效的文明特性(比如馬里兵營單位加盾,勃艮第馬廄科技打折),就算排除文明特色單位,對于完整科技樹缺失的,選入標準仍然很迷。比如意大利大學攻城技師也打折,但是重型爆破船就不打折。
有四個文明加成是涉及火藥單位的:西班牙、土耳其、勃艮第、印度斯坦,我剛開始有點擔心擴展名單不知道怎么選,但是后來發(fā)現(xiàn),制作組有一個地方用到了這個名單:土耳其的團隊加成:火槍、手推炮榴彈炮、蘇丹親兵、征服者、龜船、風琴炮、胡斯戰(zhàn)車
前置知識2:游戲里面每個單位有一個類型(class),還有很多攻防標簽。其中科技作用于單位只能通過類型或者單位ID,攻防標簽用于結算傷害。
對于建筑生效的文明特性中,沒有用名單來實現(xiàn)的是柏柏爾馬廄單位減價,實際實現(xiàn)是全量騎兵類、斥候類打折
科技打折只能通過修改或者加減科技價格實現(xiàn),單位打折也可以用乘除法
中國文明特性中的科技減價是通過一個單獨的參數(shù)屬性實現(xiàn)的,結算順序在最后。比如胡斯革新更改科技價格的話,要考慮緬甸文明自帶的加成,不能考慮中國的。
關于多科技研發(fā)順序導致科技/單位價格不一致的情況,第一個正常游戲真實出現(xiàn)的例子是瞿折羅的銀冠剎帝利+供給。由于一個是乘法,另一個是加法,所以如果單純執(zhí)行科技,劍士消耗肉的量必然不同。對于這個問題,制作組給出的實現(xiàn)是:統(tǒng)一定價

兩個科技不管以什么順序研發(fā),最終的價格就是先乘除,后加減。這個問題在縫合怪下就變得更復雜:哥特各個時代打折+斯拉夫免費供給+剎帝利,再加葡萄牙加成后的馬來金冠強征兵役,我最終的解法只能是分別定價。滿科技劍士的最終定價是24(60*0.65*0.75-15+20*0.65*0.8)肉。
另外一個研發(fā)順序影響價格的單位是步弓手系,相關科技是波斯步弓手和瑪雅城堡帝王時代減價問題
西班牙炮船加成描述里面的彈道相關實為自動激活彈道功能
想讓胡斯革新對傳教士生效,不僅需要擴大科技生效范圍,還需要把傳教士價格從100金變?yōu)?00金0肉
可以通過科技來改變單位的生產建筑、生產按鈕,但是只能改變科技的生產按鈕,不能改變科技的生產建筑