還在爲殖民地頻繁斷糧而頭疼?總被枯萎病打得措手不及?這份攻略幫你徹底解決食物問題!
(其實是我總是糾結應該種多少格的地,研究了一下後,寫下指南)
遊戲鏈接及簡介:
由聰明的人工智能故事講述者驅動的科幻殖民地模擬電腦遊戲。通過模擬心理學、生態學、槍戰、近戰、氣候、生物羣落、外交、人際關係、藝術、醫學、貿易等來生成故事。
指南適合玩家:
受夠反覆計算種植面積的強迫症
想用最小空間養活最多殖民者基地的規劃黨
追求數據化管理的硬核玩家
說明:投稿中的表格均來自我的Steam指南,另外,如有錯誤,歡迎指正。
—————————————
作物:水稻
簡介:
儘管該作物生長速度快導致單個圖塊的總產量較高, 但是平均每日產量爲最低,因此該植物無論在播種/收穫的總工作量是最大的。
分析:
很短的成熟時間使得它成爲建立殖民地初期的最理想的農作物,當食物短缺時可以作爲緊急糧食作物,可以被用於生長季節較短的生態環境以及作爲入冬前“最後一次農作物種植”的作物。
由於水稻的收穫頻率很高,成長期又短,因此來自枯萎病、寒流和其他具有破壞性事件的損失比其他農作物要少得多,該作物快速生長的特性也可以用來快速提升殖民者的種植等級。
一些我獲取到的數據:實際生長時間爲5.54日,基礎產量爲1.08/天,每格產量爲6單位,肥力敏感性100%
補充上具體數據後,表格如下:
—————————————
作物:土豆
簡介:
一種簡單而營養豐富的塊莖植物。即使在比較貧瘠的土地上也能茁壯生長。不用多久就能收穫。一種強大萬能的農作物。
分析:
在普通的土壤中(100% 肥沃度),土豆單圖塊的平均日產量略低於水稻和玉米, 所以該植物的主要優勢是土壤肥沃敏感度較低,因此適合種植在一些乾旱,肥沃度較低的土地中,如果選擇種植在肥沃土壤或使用水栽培,其表現更差。
在那些全年適合播種時間較短,玉米等其他農作物生長速度過慢的環境中,土豆會是一個更好的選擇,因爲其生長速度相較於玉米較快,勞動強度更低。
數據:實際生長時間爲10.71日,基礎產量爲1.03/天,每格產量爲11單位,肥力敏感性40%
補充數據後,表格如下:
—————————————
作物:玉米
簡介:
生長週期較長,產量非常高,但是無法在水栽培植物盆中種植。
分析:
在普通土壤(100%肥沃度)中,玉米每天提供的營養略低於水稻,略高於土豆植株。 玉米的主要優勢爲工作效率(播種以及收穫時間)極高。
但是較長的生長週期也意味着如果在生長過程中不幸遭遇枯萎病、寒流、火災或其他事件,則該植物的損失及其慘重。並且,根據生態環境的影響,溫度、氣候等,玉米可能無法在冬天到來之前成熟(如果你的生態環境爲全年可播種則無所謂)
數據:實際生長時間爲20.86日,基礎產量爲1.06/天,每格產量爲22單位,肥力敏感性100%
補充數據後,表格如下:
—————————————
作物:總結章
水稻
水稻憑藉極短的生長週期成爲危機應對的首選。
在普通土壤中每格日產量1.08單位(6單位/5.54天),水培盆中飆升至3.03單位/天。
但頻繁操作導致殖民者大半農業時間消耗在播種/收割上。
優勢:降溫前5天搶種仍可收穫(普通土地),枯萎病損失可控(單次損失≤6單位)
土豆
40%的肥力敏感性使其在沙礫地塊(70%肥力)仍保持0.90單位/天產量,遠超水稻的0.76單位。
但肥沃土地表現平庸(1.19單位/天),甚至不如玉米在普通土壤的1.06單位。
優勢:在沙礫這類地塊仍能獲得較高收益
玉米
單次22單位的超高產量使其成爲儲備糧首選,但過長生長週期意味着可能越冬失敗,或是難以應對枯萎病、寒流等事件。
不能水培,即使是肥沃土地也需要至少15天生長期緩衝。
優勢:解放殖民者,讓他們更少地把時間花費在播種/收割上
種植策略
沙漠/乾旱灌木(沙礫較多):土豆
溫帶:水稻
熱帶雨林:玉米
另外,默認開局的食物僅能生存約一週,建議第一次種植都選擇水稻。
研究出水培後,使用水培種植水稻效率最高,土豆因肥力敏感度問題,實際利用效率遠低於水稻。
同時應搭配玉米,減少殖民者的工作量。
最後,建議每季度根據殖民地人口、電力儲備、地塊等調整種植比例。
—————————————
基礎餐飲
殖民者在大多數情況下不需要直接生喫食物(減少心情,並且可能食物中毒),而是將它們製作成熟食。
熟食可以從相同數量的生食中獲得更多營養,例如,烹飪簡單食物需要0.5營養,但是會提供0.9營養,相當於食物憑空多了180%,此外,還可以增加殖民者的心情。
因此,我們需要考慮到種植對熟食的影響。
根據數據,土豆、玉米、稻米的營養值均爲0.05。
簡單食物:需要投入0.5的營養
營養膏:需要投入0.3的營養
兩者均能爲食用它的人提供相同的數值——0.9營養。
根據以上數據,列出表格如下:
一個標準的、沒有其它修正的成年人一天要消耗1.6營養來滿足飢餓,並且他們能夠隨時“儲存”1.0 營養(因爲現實中的人類也不是喫完一頓飯就趕緊喫第二頓飯)
也就是說,約每天兩頓飯(或32單位生食)可以餵養一個成年人。
加入作物的營養值與相關食品的數據,再考慮5%冗餘,供養殖民者需要種植的格數如下:
—————————————
計算程序
因爲覺得每次都查會很麻煩,所以寫了一個程序幫助計算。
鏈接:pan.quark.cn/s/237f744ff126
提取碼:bk6S
這裏先疊個甲,我是學文科的,課程不涉及編程和數學,這方面內容都是自學,可能存在很多錯誤。
以下是這個Python程序的代碼,方便大家使用及修改。
import math
# === 數據配置 ===
CROP_LIST = [
{"id": 1, "name": "土豆", "fertility_sensitivity": 0.4, "base_yield": 11, "growth_days": {"沙礫": 12.17, "普通": 10.71, "肥沃": 9.23, "水培": 6.23}},
{"id": 2, "name": "玉米", "fertility_sensitivity": 1.0, "base_yield": 22, "growth_days": {"沙礫": 29.8, "普通": 20.86, "肥沃": 14.9, "水培": None}},
{"id": 3, "name": "水稻", "fertility_sensitivity": 1.0, "base_yield": 6, "growth_days": {"沙礫": 7.91, "普通": 5.54, "肥沃": 3.96, "水培": 1.98}}
]
SOIL_LIST = [
{"id": 1, "name": "沙礫", "display": "沙礫地塊", "fertility": 0.7},
{"id": 2, "name": "普通", "display": "普通土地", "fertility": 1.0},
{"id": 3, "name": "肥沃", "display": "肥沃土地", "fertility": 1.4},
{"id": 4, "name": "水培", "display": "水栽培植物盆", "fertility": 2.8}
]
MEAL_TYPES = {
"簡單飯菜": {"input": 0.5, "output": 0.9},
"營養膏": {"input": 0.3, "output": 0.9}
}
YEAR_DAYS = 60 # 遊戲年總天數
# === 函數配置 ===
def show_menu(items, title):
print(f"\n=== {title} ===")
for item in items:
print(f"{item['id']}. {item.get('display', item['name'])}")
while True:
try:
choice = int(input("請選擇編號: "))
selected = next((x for x in items if x["id"] == choice), None)
if selected:
return selected
print("錯誤:無效編號,請重新輸入")
except ValueError:
print("錯誤:請輸入數字")
def get_valid_input(prompt, min_val, max_val):
while True:
try:
value = int(input(prompt))
if min_val <= value <= max_val:
return value
print(f"錯誤:請輸入{min_val}-{max_val}之間的整數")
except ValueError:
print("錯誤:請輸入有效數字")
def calculate_farmland(crop, soil, population, growing_days):
# 驗證生長期是否足夠
crop_growth_days = crop["growth_days"][soil["name"]]
if crop_growth_days is None:
raise ValueError(f"{crop['name']}不能種植在{soil['display']}")
if crop_growth_days > growing_days:
raise ValueError(f"{crop['name']}需要{crop_growth_days}天生長期,但當前只有{growing_days}天")
# 計算有效肥力
effective_fertility = 1 + (soil["fertility"] - 1) * crop["fertility_sensitivity"]
# 計算年產量
harvests = growing_days // crop_growth_days
annual_yield_per_tile = crop["base_yield"] * harvests * effective_fertility
# 計算所需格數(包含5%冗餘)
required_nutrition = population * 1.6 * YEAR_DAYS
required_tiles = math.ceil(required_nutrition / (annual_yield_per_tile * 0.05) * 1.05)
# 餐飲計算
total_annual_nutrition = annual_yield_per_tile * required_tiles * 0.05
meal_data = {}
for meal_type, params in MEAL_TYPES.items():
meals = int(total_annual_nutrition // params["input"])
nutrition_output = meals * params["output"]
supported_people = nutrition_output / (1.6 * YEAR_DAYS)
meal_data[meal_type] = {
"total_meals": meals,
"daily_meals": round(meals / YEAR_DAYS, 1),
"supported_people": round(supported_people, 1)
}
return {
"crop": crop["name"],
"soil": soil["display"],
"tiles": required_tiles,
"harvests": harvests,
"layout": optimal_layout(required_tiles),
"annual_yield": annual_yield_per_tile * required_tiles,
"meal_data": meal_data
}
def optimal_layout(tiles):
if tiles <= 0:
return "無需種植"
# 尋找最佳近似正方形
best_diff = float('inf')
best_w = 1
best_h = tiles
max_width = min(int(math.sqrt(tiles)) * 2, tiles)
for w in range(1, max_width + 1):
h = math.ceil(tiles / w)
area = w * h
diff = abs(w - h) + (area - tiles) * 0.1 # 平衡形狀和冗餘
if diff < best_diff and area >= tiles:
best_diff = diff
best_w = w
best_h = h
# 優化顯示格式
if best_w == best_h:
return f"{best_w}×{best_h}"
return f"{best_w}×{best_h} (共{best_w*best_h}格)"
# === 主程序 ===
def main():
print("\n=== 邊緣世界農場工具 ===")
print("作者:吾之野望 | 數據版本:1.5.4069")
try:
# 用戶輸入
population = get_valid_input("\n請輸入殖民者數量: ", 1, 1000)
growing_days = get_valid_input("請輸入生長期天數 (1-60): ", 1, 60)
# 菜單選擇
crop = show_menu(CROP_LIST, "選擇作物")
soil = show_menu(SOIL_LIST, "選擇土地類型")
# 計算並顯示結果
result = calculate_farmland(crop, soil, population, growing_days)
print("\n=== 種植數據 ===")
print(f"作物:{result['crop']}")
print(f"土地:{result['soil']}")
print(f"年收穫次數:{result['harvests']}次")
print(f"所需格數:{result['tiles']}格(含5%冗餘)")
print(f"推薦佈局:{result['layout']}")
print("\n=== 餐飲生產 ===")
for meal_type, data in result["meal_data"].items():
status = "充足" if data['supported_people'] >= population else "不足"
print(f"\n{meal_type} {status}")
print(f" 全年總量:{data['total_meals']}份")
print(f" 日均生產:{data['daily_meals']}份/天")
print(f" 供養能力:{data['supported_people']}人")
print("\n說明")
print("- 此程序佈局優先近似正方形,允許10%以內長寬差異")
print("- 已包含5%產量冗餘,防止意外損失")
except Exception as e:
print(f"\n發生錯誤:{str(e)}")
finally:
input("\n按回車鍵退出程序...")
if __name__ == "__main__":
main()
—————————————
附錄
(不完全)使用公式:
實際生長週期 = 基礎週期 / (1 + (土壤肥力% - 1)*肥力敏感度
例:水稻普通土地=5.54/(1+(1.0-1)*1.0=5.54天
日產量 = 單次產量 / 實際週期
例:水稻水培=6/1.98≈3.03單位/天
日營養產出 = 日產量 * 0.05
例:水培水稻=3.03*0.05≈0.152營養/天
理論格數 = (1.6 * 人口數 * 60) / (日營養產出 * 60)
簡寫:格數=1.6*人口/日營養產出
實際格數 = 理論格數 * 1.05(5%冗餘)
例:10人水培水稻=1.6*10/0.152*1.05≈110格
簡單食物量 = 總營養 / 0.5
營養膏量 = 總營養 / 0.3
供養人數 = (食物量 * 0.9) / (1.6 * 60)
2000食物≈18.75人
變量說明:
土壤肥力%:沙礫70/普通100/肥沃140/水培280
肥力敏感度:土豆0.4/玉米1.0/水稻1.0
單次收穫量:土豆11/玉米22/水稻6
參考:
RimWorld中文維基(rimworld.huijiwiki.com/wiki/)
RimWrold Wiki(rimworldwiki.com/wiki/)
更多遊戲資訊請關註:電玩幫遊戲資訊專區
電玩幫圖文攻略 www.vgover.com