KSP2開發(fā)日志21#:火箭閃閃發(fā)光

(譯注:原標(biāo)題Rockets‘ Red Glare引用了美國國歌第一節(jié)第三句“And the rocket's red glare, the bombs bursting in air”——“火炮閃閃發(fā)光,炸彈轟轟作響”)
在航天工程中有一個經(jīng)典的玩笑:每個分系統(tǒng)都覺得自己才是是任務(wù)成功的核心。沒有推進(jìn)系統(tǒng)提供引擎,你顯然飛不成。沒有任務(wù)設(shè)計(jì),你就不知道去哪里。沒有制導(dǎo)、導(dǎo)航和控制系統(tǒng),火箭就不能轉(zhuǎn)彎。電源和生保系統(tǒng)自然也是關(guān)鍵??梢?,航天工程是規(guī)模龐大的跨學(xué)科工程。
KSP2也是如此。我們看到在社區(qū)成員之中有很多討論,為我們下一步應(yīng)該增加或優(yōu)化什么功能提出建議。KSP1的模組社區(qū)也證明了,可以加進(jìn)游戲的功能有幾千種,實(shí)現(xiàn)每一種功能的方法也有幾十種。能搞的事情太多了。我們注意到,玩家們迫切要求在游戲中添加熱系統(tǒng),這話可說到我的心坎上了。
我將在這篇開發(fā)日志中介紹KSP2的熱系統(tǒng)。雖然篇幅較長,但熱系統(tǒng)如此復(fù)雜,值得詳細(xì)討論。同時,我覺得有必要向各位解釋我們正在做什么,遇到那些難題,以及我們?yōu)榱藙?chuàng)造有趣的游戲體驗(yàn)做出了哪些特殊設(shè)計(jì)。

熱量難題
我們嘗試用KSP2帶領(lǐng)未來的火箭工程師們跨入眾多航天學(xué)科的門檻。游戲中的許多內(nèi)容偏向任務(wù)規(guī)劃和航天器設(shè)計(jì),重要的是人們可以從中體驗(yàn)到航天飛行的主要矛盾所在。很遺憾,熱控制在種種航天難題中不太引人注意,因?yàn)樗浅!瑿OOL。
相比于KSP1,我們計(jì)劃大大擴(kuò)充有關(guān)熱量的玩法。我們將迎接從普通星球(不要把小綠人丟進(jìn)活火山)到奇異場景(在你的星際飛船上安裝幾千平方米的散熱板)再到真正硬核玩法(在一顆離恒星很近的潮汐鎖定行星上的山脈陰影中建造聚落)在內(nèi)的一系列全新冒險(xiǎn)。正因?yàn)槲覀冊谛伦髦写蠓鶖U(kuò)充了可能的環(huán)境類型、玩家能使用的部件和可體驗(yàn)的任務(wù),這些冒險(xiǎn)才得以成真。
從根本上說,我們必須重構(gòu)KSP2的整個熱系統(tǒng)。這個系統(tǒng)需要做到KSP1做不到的事情:
它必須逼真地模擬在航天飛行、航空飛行和聚落建造過程中面臨的熱量問題;
同時,它應(yīng)當(dāng)如同KSP中的燃料或電量系統(tǒng)一樣被合理抽象以便教學(xué);
它必須可預(yù)測,可規(guī)劃且足夠穩(wěn)定,這樣玩家在進(jìn)行涉及熱量的任務(wù)規(guī)劃、航天器設(shè)計(jì)和聚落建造時才能有的放矢;
它應(yīng)在不同時間尺度下運(yùn)作——我們既要在1倍時間流速下處理一個發(fā)熱組件,也要在10,000,000倍時間流速下處理50個發(fā)熱組件。
這些都是巨大的挑戰(zhàn)——還沒算上讓這樣的系統(tǒng)在游戲中穩(wěn)定高效運(yùn)行所要獻(xiàn)祭的程序員。

發(fā)掘核心用戶故事
(譯注:user story,也可稱用戶需求,是產(chǎn)品管理領(lǐng)域的概念,指從用戶或客戶的角度,對所講述功能的簡短描述)
在為KSP2設(shè)計(jì)子系統(tǒng)時,我們常希望了解與此系統(tǒng)相關(guān)的物理知識和現(xiàn)實(shí)表現(xiàn)。這些知識會影響到我們?yōu)橥婕以O(shè)計(jì)的游戲內(nèi)容。游戲中的熱控制涉及以下三個方面:
在航天器或聚落中的產(chǎn)熱/散熱部件;
再入行星大氣和氣動加熱;
能影響航天器和聚落的環(huán)境熱源和熱沉(譯注:指溫度不隨傳遞到它的熱能的大小變化的物體)(比如海洋)。
我將著手審視這三個方面背后的物理和現(xiàn)實(shí)。
避免熔化
(譯注:avoiding meltdowns,也有避免心理崩潰的含義)
在日常生活中,幾乎每個有那么點(diǎn)用的過程都會產(chǎn)生一定程度的廢熱。玩KSP2時你的電腦會生成廢熱,核反應(yīng)堆發(fā)電時會生成廢熱,甚至你的身體都在隨時散發(fā)多余的熱量。有這么一條經(jīng)驗(yàn)規(guī)律告訴我們,你用的東西科技含量越高,這東西產(chǎn)生的廢熱越多。巧了,我們在KSP2里就要加幾樣發(fā)熱高科技。
物體變熱,我們就得想法子把多余的熱量弄走。要是不這么干,就會發(fā)生像核電站堆芯熔化那樣的事故。

轉(zhuǎn)移熱量有三種方式:對流、傳導(dǎo)和輻射。對流十分高效,是指通過大氣或流體把熱量從熱物體移走。傳導(dǎo)也比較高效,這種方式需要兩個物體直接接觸——此時熱量會從熱物體轉(zhuǎn)移到冷物體。輻射效率最低,這種方式靠的是熱物體向外輻射光子,進(jìn)而帶走熱量。
在太空中,熱是個大問題。你或許會覺得太空很冷——有道是螢孤黑夜深,高處不勝寒。說得好像有點(diǎn)道理。Trekkies(譯注:星際迷航的粉絲)應(yīng)該很熟悉星際迷航2中的一句著名臺詞:“it is very cold in space”。從這句話可以看出,可汗演戲頗具天分,但他對熱力學(xué)的理解實(shí)在不太行。當(dāng)沒有空氣或其它介質(zhì)的時候,我們能利用的唯一散熱途徑就是輻射。

右:一艘?guī)в恤辈可岚宓腒SP2星際飛船。
對于KSP2,我們從熱傳導(dǎo)的思路中提取如下用戶故事:
航天器和聚落的部件應(yīng)能產(chǎn)生熱量。這些部件包括引擎、鉆頭、工廠和能源等;
玩家應(yīng)能用全部三種傳熱方式冷卻航天器。也就是說,既可以在太空中使用散熱板輻射散熱,也可以在行星上利用大氣對流,還可以把某個小行星當(dāng)作熱沉。
這些用戶故事對KSP1老玩家來說并不陌生,KSP1中的鉆頭和轉(zhuǎn)換爐就是既產(chǎn)熱又需要散熱的部件。而且,KSP1還能在已激活的航天器上準(zhǔn)確模擬三種傳熱途徑。但是,我們在KSP2中需要模擬更大的熱流量和更多的產(chǎn)熱部件。更為重要的是,我們需要改進(jìn)向玩家傳達(dá)熱量信息的方式。
稍焦著陸
(譯注:原文為Slightly Singed Landings)
宇宙飛船再入大氣的速度非常高,飛船前方的空氣被劇烈壓縮,產(chǎn)生的極端高溫能夠損壞甚至摧毀飛船。實(shí)際中,可以采取特殊的再入路徑以減少發(fā)熱,飛船本身還可以使用特殊材料抵御高溫——這種材料在再入時能緩慢燒蝕并帶走熱量。

這是航天飛行的一個基本且重要的環(huán)節(jié),因此我們必然要在KSP2中加以體現(xiàn)。我們可以從再入過程中提取幾條短小的用戶故事:
在大氣中高速飛行會使載具升溫;
玩家應(yīng)能使用隔熱部件保護(hù)載具免受再入加熱損害;
玩家應(yīng)能獲取性能更好的專用隔熱部件。

在KSP1中也有類似的情況,但這次我們把尺度放大了。KSP2將加入更多外星球,游戲中也將出現(xiàn)更高的速度和更多樣的大氣,我們將面對更嚴(yán)峻的挑戰(zhàn)。
外星球?倒不如說是外熱球!
再入的事暫且不表,我們還得考慮環(huán)境因素。在KSP2的宇宙旅程中,你的小綠人將置身于各種各樣的環(huán)境,比如:
離恒星很近;
超級熱、超級冷或者“溫度正好”的大氣;
高溫甚至熔化的地面;
寒冷甚至凍結(jié)的行星。
這些就是我們想讓玩家在向其他行星發(fā)射衛(wèi)星或小綠人之前考慮的事情。我們想創(chuàng)造一些有趣的謎題,解開這些謎題需要玩家恰當(dāng)?shù)厥褂貌考瑒?chuàng)新地運(yùn)用環(huán)境,巧妙地規(guī)劃任務(wù)。這也意味著之前提到的所有傳熱材料都應(yīng)受到環(huán)境的影響。你可以在寒冷星球上更高效地使用采礦鉆頭,也可能在巖漿星球上面對更有趣的聚落難題。
我們從對環(huán)境的思考中提煉出以下用戶故事:
暴露在強(qiáng)陽光下會使部件升溫;
大氣和海洋會使改變部件溫度;
靠近或接觸某些地貌特征會改變部件溫度。

以上用戶故事其實(shí)在KSP1的一項(xiàng)核心擴(kuò)展(譯注:KSP 1.0版本)中有所體現(xiàn)。但在KSP2中,“部件層”和“環(huán)境層”的互動將產(chǎn)生更廣泛的影響。這部分我們一會兒再說。
一些簡單小問題
等等,還有!
部件說明中應(yīng)給出一系列熱學(xué)參數(shù)以表示部件能否用于特定熱環(huán)境(比如升溫速率或者極限溫度);
暴露在引擎噴流中會使部件升溫。
事情雖小但不能忽略。為了有趣的游戲體驗(yàn)而設(shè)計(jì)系統(tǒng)時,我們需要思考部件應(yīng)具備怎樣的熱學(xué)特性,所以部件應(yīng)有不同的耐熱性能和極限。哦,我們還得讓引擎噴流發(fā)熱。不能讓你用引擎對著聚落噴射而不承擔(dān)任何后果!
整合
總而言之,根據(jù)以上用戶故事,我們希望在KSP2中建立一個具有以下功能的熱系統(tǒng):
創(chuàng)造能夠發(fā)熱和能夠通過三種傳熱途徑大量散熱的部件;
模擬再入大氣過程,并能用防熱罩減輕損害;
建立大量從冷到熱的環(huán)境模型,并在上述兩項(xiàng)功能中運(yùn)用這些模型;
為部件的熱行為設(shè)定合適的變量。
我們將這些用戶故事同KSP2的四大設(shè)計(jì)理念相對照,以確保新的熱系統(tǒng)能與游戲相適應(yīng)。從圖看出,我們的熱系統(tǒng)偏重于實(shí)現(xiàn)“擬真太空飛行”和“外星探索”兩項(xiàng)理念。但是我必須向“建造又COOL又獨(dú)特的火箭”這句話致敬,因?yàn)槲页矚g“冷”笑話。

另外,熱系統(tǒng)必須是可預(yù)測、可規(guī)劃的。這部分也留到稍后再說。

研究真空中的球形牛
(譯注:真空球形牛代表物理學(xué)研究中常用的理想模型方法)
前文提到,KSP2的熱系統(tǒng)應(yīng)被合理抽象,也就是說模擬應(yīng)該抓大放小。用戶故事決定了系統(tǒng)應(yīng)呈現(xiàn)的細(xì)節(jié)程度。事無巨細(xì)的系統(tǒng)不僅讓玩家難以理解,也讓程序員難以調(diào)試,還會產(chǎn)生討厭的極端情形,總之無法滿足用戶的需求。過于簡單的系統(tǒng)又意味著我們在“擬真太空飛行”的設(shè)計(jì)理念上做出巨大妥協(xié),對那些高玩來說也沒什么意思。
我很喜歡“真空球形?!边@個理想模型——如果要分析一頭牛,可以先假設(shè)這頭牛是一個漂浮在真空中的圓球。對這樣的情景進(jìn)行物理分析十分簡單,甚至是過于簡單了。其實(shí),我們設(shè)計(jì)熱系統(tǒng)的過程就像是為這樣一頭牛搭建幾何近似和環(huán)境背景。這頭??刹豢梢越瞥蓤A柱體?可不可以看成是是幾個方盒子拼在一起?當(dāng)然,要是給一頭牛的全部外形細(xì)節(jié)進(jìn)行建模的話將非常麻煩,我們不能這么干。

KSP2的熱系統(tǒng)將是這樣一個集合體:它既能反映真實(shí)物理,又切合我們的用戶故事,對玩家來說還易于理解和操作。合理的簡化使我們得以構(gòu)建一些直觀的小工具,幫助玩家理解這一系統(tǒng)。簡言之,玩家可以知道他們的航天器或聚落何時會過熱,還知道用什么方法解決過熱問題。
確定性VS模擬性
在模擬類游戲中,開發(fā)者常需要在確定性和模擬性之間做取舍。游戲的模擬性成分越多,游戲玩法就越是靠基礎(chǔ)規(guī)則驅(qū)動。在我們的早期熱系統(tǒng)中,散熱板就是模擬性的典型案例。散熱板的行為方式是由以模擬為中心的機(jī)制確定的:
首先,定義散熱板的可用面積;
然后,確定各種因素作用下散熱板各處的溫度(這些溫度同樣靠模擬生成);
最后,把數(shù)字代入斯特藩-玻爾茲曼定律,計(jì)算出散熱板的輻射散熱量。

這種模擬方法可以準(zhǔn)確估計(jì)出散熱板的散熱量。但是,想實(shí)現(xiàn)這種效果,我們需要進(jìn)行大量設(shè)計(jì)和計(jì)算來確定溫度取值,還得額外告訴玩家散熱板面積是怎么回事,散熱板溫度是怎么回事,散熱量、面積、溫度之間的物理關(guān)系又是怎么回事。如果要模擬的物理關(guān)系很復(fù)雜(比如在剛才提到的那個定律中,輻射功率和溫度的四次方成正比),那我們的工作就會變得更加困難。模擬還可能產(chǎn)生矛盾:比起游戲中其它系統(tǒng),熱系統(tǒng)是不是模擬得過于細(xì)致了?這要爭論起來可沒完沒了。
我們或許可以采用更簡單的基于確定性的方法:只要給一塊散熱板的散熱量做出定義即可。

這樣一來,不論是對設(shè)計(jì)者還是玩家來說,事情都變得簡單多了。通常我們會把確定法和模擬法混合使用。在散熱板的例子中,我們把部件的表面積和溫度代入公式,推算部件的散熱量數(shù)值,再把數(shù)值直接放進(jìn)游戲,而不是把公式丟給玩家。這樣做有很多好處,比如能把玩法和美術(shù)分離開來,使我們更靈活地分別進(jìn)行開發(fā)。
KSP1在模擬性方面做得不好。在KSP1的熱模型中,航天器的所有部件都要計(jì)算自身與環(huán)境、自身與其他部件的熱交換(通過對流、傳導(dǎo)和輻射),計(jì)算部件表面之下的內(nèi)部熱源,跟蹤多達(dá)三種不同的溫度。你需要在 KSPedia 上埋頭查閱大量資料,才能逐步理解這一套東西是怎么運(yùn)作的。

在KSP2中,我們決定在不怎么移動的部件上使用一個新模型,我稱之為“基于現(xiàn)實(shí)物理的確定性模型”。這個模型仍然具有實(shí)現(xiàn)前文所列用戶故事所需的復(fù)雜度,不會在擬真性上妥協(xié),但大大減少了玩家的學(xué)習(xí)成本。
有哪些改動
你一定想知道我們對模擬過程做了哪些修改。
簡化溫度數(shù)值:我們不想再讓玩家在玩游戲的時候琢磨三種不同的部件溫度了。少就是好。
部分而非完全的高分辨率熱力學(xué):模擬部件之間的熱傳導(dǎo),或者進(jìn)一步模擬部件與散出廢熱之間的熱傳導(dǎo),并非實(shí)現(xiàn)用戶故事的必需項(xiàng)。在KSP1中,特別是在高倍時間加速的情況下,這樣的模擬往往會打破熱平衡。如果我們想把后臺航天器也加進(jìn)熱模擬中,就必須簡化熱系統(tǒng)。對有500個部件的航天器進(jìn)行熱學(xué)計(jì)算已經(jīng)很困難了,想想如果要對100個航天器上的50000個部件進(jìn)行這樣大規(guī)模的精細(xì)計(jì)算又會是個什么場景!我們必須把握準(zhǔn)確和高效的尺度。
簡化環(huán)境互動:和上一條的理由類似,環(huán)境與給定部件之間的互動可以簡化。我不會為坎星低軌道上的長波輻射和短波輻射建?!,F(xiàn)在我腦袋里的前熱物理學(xué)家正為此又哭又鬧呢,但我就當(dāng)聽不見。

整體解決方案
綜上所述,我們設(shè)計(jì)了一個很棒的(譯注:原文為rad,意為很棒,也是輻射計(jì)量的單位)系統(tǒng)。耶,諧音梗。
KSP2的熱系統(tǒng)會使用一個基于熱流管理的模型——這里的熱流指在一段時間內(nèi)施加到某個物體上的熱能。我們想建模表述的所有過程歸根到底都是在部件上增減熱流。熱流可以是正向的,使部件升溫;也可以是負(fù)向的,使部件降溫。以下是用熱流模型重新闡釋的用戶故事:
有些事情產(chǎn)生正熱流,比如采礦、制造資源和運(yùn)轉(zhuǎn)引擎;
有些事情產(chǎn)生負(fù)熱流,比如散熱板和各種熱沉;
恒星發(fā)光產(chǎn)生正熱流;
溫暖或寒冷的大氣、流體、表面產(chǎn)生或正或負(fù)的熱流;
高速大氣飛行(再入)產(chǎn)生正熱流。
在這個模型中,我們可以把所有影響部件的熱流求和,把得到的結(jié)果告訴玩家。如果所有熱流加和為正,部件就升溫;熱流加和為負(fù),部件降溫;沒有熱流或加和為零,部件溫度穩(wěn)定。如果部件溫度超過了耐熱極限,好吧,那就炸了。我來畫幾個圖示!

首先分析再入情景。一個裝有防熱罩的乘員艙正快速進(jìn)入大氣層。這里的兩個部件都存在對流傳熱,其中有大氣傳熱,還有高速運(yùn)動產(chǎn)生的再入熱流。防熱罩為乘員艙阻擋了熱量,其凈熱流為正。所以防熱罩溫度升高,乘員艙卻沒有升溫。

再看看由3個部件組成的飛船繞坎星作軌道飛行時的情景。左圖中,這個獨(dú)立的飛船什么都沒做。無熱流,無變溫。右圖中,引擎點(diǎn)火并產(chǎn)生正熱流,所以它升溫了,除此之外沒有其它熱流。如果就這么放著不管,這個引擎絕壁要炸。

現(xiàn)在往組合體上裝幾個散熱板。我沒在圖中標(biāo)出所有部件,但這實(shí)際上是個裝有核反應(yīng)堆的電推飛船。左圖中,散熱板沒展開,反應(yīng)堆運(yùn)行并放熱,輸出200 kW的熱流,馬上就要燒壞了。右圖中,謝天謝地,散熱板展開成功。每個散熱板從反應(yīng)堆抽出100 kW熱流。萬物平衡,不會爆炸。

最后一個例子稍微復(fù)雜點(diǎn)(我已經(jīng)畫得很簡單了)。這是某大氣行星上的一個聚落。冷卻塔排出2 MW熱流,反應(yīng)堆產(chǎn)生2 MW熱流,工廠產(chǎn)生1 MW熱流。我們把旁邊的水域當(dāng)成熱沉,向其中排出2 MW熱流。一計(jì)算就發(fā)現(xiàn)凈熱流是負(fù)的。因?yàn)楣こ處煻美铆h(huán)境,所以聚落居民都很開心。這個故事很美妙,它展示了你布置好的聚落最終會存在怎樣的優(yōu)缺點(diǎn)。如果聚落邊不是水而是巖漿,這可能就不是個宜居的地方。
我們也可以看出這個系統(tǒng)是如何做到“可規(guī)劃”的。雖然系統(tǒng)中有很多細(xì)節(jié),但是玩家只要知道整個航天器的凈熱流即可。不論有多少發(fā)熱部件,也不管環(huán)境情況如何,每個部件只為總體貢獻(xiàn)一個數(shù)字。把這些數(shù)字加起來,如果結(jié)果為正,你就攤上事了。如果結(jié)果是零或者負(fù)的,那就啥事沒有。
熱系統(tǒng)的第二部分是我們?nèi)绾未_定合適的熱流值。我們假設(shè)KSP2中的所有部件都有一定程度趨向熱平衡的自調(diào)節(jié)能力,而無需建立一種能模擬出所有可能熱源作用下的所有可能熱流值的復(fù)雜環(huán)境模型??残瞧焚|(zhì),堅(jiān)如磐石!
只有當(dāng)我們?yōu)榱藶殡y玩家而設(shè)定一些不正常的情景時,正熱流才會出現(xiàn),比如說:
你的航天器逐漸靠近恒星;
你的航天器高速再入,燒得冒火;
某個部件搞了些大量產(chǎn)熱的事,當(dāng)然我們不考慮環(huán)控生保之類的小熱源;
你用聚變引擎噴射軌道居住站。
當(dāng)你的直覺認(rèn)為某些情景有助降溫時,系統(tǒng)一般都能給你一個負(fù)熱流。這樣的情景包括:
航天器漂在冰海上,或者在冷風(fēng)中飛行;
某個部件搞了些散熱的事,比如啟動散熱板。
我們借助正負(fù)熱流的概念實(shí)現(xiàn)前文所述的所有用戶故事,同時只留下兩個需要傳達(dá)給玩家的數(shù)值:部件的凈熱流和部件的溫度。玩家會盡可能把凈熱流調(diào)節(jié)到零,溫度則告訴玩家部件離爆炸還有多遠(yuǎn)。
再提一嘴溫度和極限——環(huán)境溫度和部件溫度之間是存在關(guān)系的。通常來說,你不應(yīng)該把部件帶到它不適應(yīng)的環(huán)境中。如果你試著把一個不耐熱的部件(就設(shè)定這個部件會在500 K時壞掉吧)擺到600 K的大氣中,你就會因?yàn)闆]考慮當(dāng)?shù)丨h(huán)境熱流而遭遇嚴(yán)重后果。如果你非要這么干,最好用點(diǎn)小竅門,比如把部件裝進(jìn)貨艙。
時間加速和載入
我們給熱系統(tǒng)提出了一項(xiàng)核心要求:在時間加速下也要正常運(yùn)作,其在不同倍數(shù)加速下的行為還應(yīng)具有一致性。與之類似,熱系統(tǒng)在后臺航天器上的運(yùn)作方式也是我們考慮的課題。這項(xiàng)工作支撐起聚落和星際飛船的玩法。
玩家在操作星際飛船等需要持續(xù)點(diǎn)火的東西時肯定會用到高倍時間加速,引擎在時間加速下持續(xù)燃燒并產(chǎn)生巨量廢熱。我們要做的就是在這種時候維持熱系統(tǒng)的連貫穩(wěn)定運(yùn)行。如果一個航天器在1倍速下能耐受住熱量,那它在10,000,000倍速下也必然能頂住——這樣一個不言自明的推論給我們的系統(tǒng)開發(fā)提出了非常具體的要求。
對于聚落,我們既要處理時間加速的問題,又要處理那些在后臺運(yùn)行的東西。KSP1中的一些數(shù)值系統(tǒng)(尤其是熱系統(tǒng))只對已載入的航天器生效。為了實(shí)現(xiàn)我們提出的用戶故事,我們需要對那些展示給玩家的概念有一個清晰的認(rèn)識。是的,一致性是這些玩法成立的必要條件。玩家的期望是,不論視角是否切換到聚落,那里的資源生產(chǎn)或貨物運(yùn)輸都能夠無縫連續(xù)地進(jìn)行。這又給熱系統(tǒng)提出要求:由于大部分的復(fù)雜聚落功能都會產(chǎn)生熱量,我們需要在關(guān)于生產(chǎn)的計(jì)算中考慮這些熱量。并能夠在聚落位于后臺時進(jìn)行計(jì)算。
我們提出的基于熱流的熱系統(tǒng)能夠很好地滿足這些要求。只要沒有額外熱流出現(xiàn),溫度就不會上升,故我們可以簡化甚至忽略大部分計(jì)算。我們還為涉及到熱流的情況設(shè)計(jì)了一個專門的簡算機(jī)制。以時間加速為例可能更容易說明:假設(shè)你給航天器裝了個巨大的星際引擎,這個引擎能產(chǎn)生100 MW熱量,同時你又裝了一堆散熱板,足以排放1000 MW熱量,那么易證:
只要散熱板保持工作,引擎就不會爆炸;
如果散熱板停止工作,那么一旦啟動中高倍數(shù)的時間加速,引擎爆炸只在一瞬間。
即使我們有了這么多想法,讓系統(tǒng)變得穩(wěn)定且可理解仍是一大技術(shù)挑戰(zhàn)。系統(tǒng)的”可理解性“意味著我們還需要開發(fā)一些有助于玩家和系統(tǒng)間互動的工具?,F(xiàn)在談一談和規(guī)劃有關(guān)的事情吧。
規(guī)劃成功
前文提到,KSP2的熱系統(tǒng)應(yīng)該是可規(guī)劃的。而我所描述的系統(tǒng)為實(shí)現(xiàn)這一目標(biāo)提供了合適的細(xì)節(jié)水平。玩家可以像檢查推重比和dV一樣去檢查航天器的熱性能。
作為“可規(guī)劃”目標(biāo)的一部分,我們正在研究從UI到部件的一系列工具和概念。我們很高興能在EA階段對熱系統(tǒng)進(jìn)行迭代,并考慮來自社區(qū)的優(yōu)秀反饋。我們希望你在指揮小綠人一頭扎進(jìn)太陽時,既能感到興奮,又能預(yù)測到即將出現(xiàn)的可怕情況。

開發(fā)和部署
KSP2處于EA階段,正沿著既定的更新路線圖前進(jìn)。因此把這一整個復(fù)雜系統(tǒng)塞進(jìn)一次更新中并無意義,特別是我們還有一堆野心勃勃的點(diǎn)子要實(shí)現(xiàn)。我們會在合適的更新階段將最新的功能迭代加入游戲。目前情況是這樣,但我們會動態(tài)完善更新路線圖,以便讓發(fā)熱問題在適當(dāng)?shù)臅r候出現(xiàn)在玩家面前。
圍繞再入發(fā)熱而提出的用戶故事和我們的第一次大更新——科學(xué)更新——密切相關(guān)。試想,如果科學(xué)試驗(yàn)材料在返回地面之前能被再入發(fā)熱燒掉,那么取回試驗(yàn)結(jié)果的過程是不是就更好玩了?再入發(fā)熱排在熱系統(tǒng)各項(xiàng)功能更新的首位。敬請期待相關(guān)內(nèi)容先于或隨著科學(xué)更新一道加入。
類似地,在我們推送第二個大更新——聚落更新——之前,擺弄散熱板和發(fā)熱部件也沒什么意思。當(dāng)我們推出更加先進(jìn)的推進(jìn)系統(tǒng)和核反應(yīng)堆之類的能源時,這些和熱量相關(guān)的部件亦會同時推出。當(dāng)前版本的游戲中確實(shí)有核反應(yīng)堆,但你應(yīng)該也注意到了,反應(yīng)堆上的集成式散熱板巧妙地避開了熱問題。后續(xù)推出的更大的反應(yīng)堆就不會有集成散熱了,你得往上面裝散熱板。一些熱規(guī)劃工具也將隨聚落更新推出。
當(dāng)小綠人能夠走向星際、前往外行星時,我們提出的有關(guān)環(huán)境的用戶故事也就到了徹底兌現(xiàn)的時候。星際更新中將有更先進(jìn)的環(huán)境熱系統(tǒng)和更多規(guī)劃工具,幫助你建造更涼爽的聚落或航天器。巖漿星球上肯定沒有適宜的熱環(huán)境。

希望你能通過這篇開發(fā)日志得知KSP2熱系統(tǒng)的發(fā)展方向以及我們面臨的技術(shù)挑戰(zhàn)??傊覍懙煤荛_心。
(全文完)

原文發(fā)布于2023年7月21日
作者:Chris Adderley,KSP2開發(fā)團(tuán)隊(duì)設(shè)計(jì)師
翻譯:董工至明
初試翻譯,水平業(yè)余,經(jīng)驗(yàn)不足,敬請批評指正
本譯文發(fā)布于BiliBili、百度坎巴拉太空計(jì)劃吧、百度坎巴拉太空計(jì)劃2吧