2022年3月24日 星期四

Simutrans(模擬交通)遊戲,有關OTRP修改版本。

OTRP是Simutrans遊戲的非官方修改版本,OTRP是One way Two lanes Road Project(單向二車道方案)之意,它修改了遊戲主程式,修改、新增一些遊戲玩法與功能,主要特色是為遊戲增加了單向二車道的超車功能,還有設定道路avoid becoming cityroad(避免成為城市道路)、citycars do not enter(城市車輛不准進入),拖曳圈選一片區域來施工,advanced settings(進階選項)設定更精細的班表。
作者網頁:
這裏我僅將作者網頁中的Download(下載)、Install(安裝)、How to use(如何使用)、Other(其它)稍做說明,並介紹我在遊戲中的實際使用情形。注意這不是翻譯,我只是發表心得並做筆記而已。

Download(下載):
因我是玩windows版的,就下載主程式sim-WinGDI64-OTRPv??.exe檔(??為版本號碼)及RibiArrow.zip這2個檔案。
在作者網頁中可以直接下載檔案,不過實際上在下載主頁:https://osdn.net/projects/otrp/反而才是最新的更新版本。

Install(安裝):
我玩的是PAK128圖形,所以將RibiArrow.zip壓縮檔中的RibiArrow/for128/misc.RibiArrow.pak解壓到硬碟裏的simutrans\pak128\資料夾裏。
編輯simutrans\pak128\config\menuconf.tab文字檔,將
simple_tool[37]=,:
這一行加入,記得存檔。
如圖:

之後在遊戲中就能夠按冒號鍵(:)來顯示道路設定的結果。
如圖:

使用下載的主程式exe檔執行遊戲。
如果遇到執行錯誤,如圖:

只要將Documents\Simutrans\settings.xml這個檔案刪掉,之後即可正常執行遊戲。
settings.xml是在離開遊戲時,會自動儲存的選項資料、當時視野狀態,選項資料如圖:

使用OTRP修改版本玩就不要在標準版本之間再轉換了,存檔不一定能相容,設定好的單向道路也會不見。我使用OTRP修改版本存檔成標準版本,使用標準版本要讀存檔時卻發生錯誤,如圖:

Road configuration(道路設定):
在選擇道路工具的同時按住Ctrl鍵就可以開啟Road Configuration視窗,如圖:

設定好後接著就如原來一樣蓋道路即可。

halt mode(停站模式):設定道路為單向二車道,同時再加上可以在超車道停車上下乘客或裝卸貨物。
遊戲中超車是指車輛為超越同車道前方較慢的車輛而行駛至隔壁車道,待超越前車後即駛回原車道的行為;而隔壁車道即為超車道。
「設定道路為單向二車道」是使用的目的;但「在超車道停車上下乘客或裝卸貨物」我在遊戲中就還沒有實際使用情形,因不會臨時換邊上下乘客或裝卸貨物。

oneway(單向):設定道路為單向二車道。
遊戲中每條道路原本都是雙向雙車道,oneway設定可以使道路變成單向二車道,如此可實現雙向四車道高速公路的設計,如圖:

城市道路速限不高,大多車輛都能達到最高速限,在彼此速度一樣的情形下,超車很難;即使能超越這台車,下一台車也不一定能超越,還是把心思都花在雙向四車道高速公路上就好。
其它道路如城際公路、快速道路等都是雙向雙車道規劃,也不使用oneway設定。
至於六車道高速公路,外側2條設定為oneway,中間那條不設定,如圖:

twoway(雙向):遊戲中原本雙向雙車道的設定。
遊戲中原本的超車行為相當保守,除非有把握可以很快超車然後回原車道,不然一般就是慢慢地跟車,即使隔壁車道是空的也不輕易超車,前後車車速要相差到30公里/小時才有很大機會能超車。

only loading convoy(唯靜止車隊):唯有前方車輛處於靜止狀態時才超車,例如前方車輛正在停車上下乘客或裝卸貨物。
我在遊戲中就還沒有實際使用情形,因超車行為只設定在單向二車道上,如四車道高速公路,而且高速公路上並不會有停車上下乘客或裝卸貨物的行為。

prohibited(禁止):完全禁止超車。

inverted(反方向):反方向行車。靠右行駛變成靠左行駛,靠左行駛變成靠右行駛。
上面兩個也沒有實際使用情形。

avoid becoming cityroad(避免成為城市道路):城市在擴張的同時會將道路一律變成速限為50公里/小時的城市道路,設定avoid becoming cityroad以避免車速大大降低。
我在遊戲中總共規劃有城市道路、城際公路、快速道路、高速公路、快捷公車專用道5種道路,其中快捷公車專用道的平面路段、平面高速公路會使用到avoid becoming cityroad設定。
城際公路都是走平面,只有在車輛不停靠城市而需穿越時才會設定avoid becoming cityroad,類似外環道設計,不過我還沒有實際使用情形,因為走平面道路的車輛遇城市必停靠。
快速道路都是走高架或地下,沒有問題。
高速公路分高架高速公路、平面高速公路。平面高速公路在城市外圍路段需要設定avoid becoming cityroad,在城市中心區路段依舊是城市道路模式,如圖:


快捷公車因要維持速度所以設置專用道,以往都是做成高架的,偶爾是平面加隧道,平面是用圍籬隔起來;現在在城市內可以直接做成平面的了,如圖:


citycars do not enter(城市車輛不准進入):有些城市車輛速度奇慢,會影響車流速度;雖然有些速度也很快,但行駛路徑相當不固定,也不希望讓它進入特定的道路。
在遊戲中我會在重要道路(例如:高架高速公路)入口處設置速限標誌避免慢速車進入,而在快捷公車專用道的平面路段才會設定citycars do not enter,如圖:


avoid becoming citycar enabled -> Green
避免成為城市道路->綠色,如圖:

citycars do not enter enabled -> Magenta
城市車輛不准進入->洋紅色,如圖:

both are enabled -> Orange
兩者皆設定->橘色,如圖:

Lane assignment signs(車道指示標誌):
簡單說就是左轉車靠左行駛、右轉車靠右行駛。
其應用是:設定成Left時,要在前方路口左轉的車輛會靠左行駛、直行車則靠右行駛;設定成Right時,要在前方路口右轉的車輛會靠右行駛、直行車則靠左行駛;有效範圍為道路標誌到下個路口之間。不過當車流過大時會起不了作用,車輛可能會找不到空檔轉換車道。
對於citycars(城市車輛),道路標誌到下個路口間的距離不能少於citycar_max_look_forward的值才有作用。

經測試,使用單行道標誌來設定,Left跟Right實際上是相反的情況,應該是作者所在的日本是靠左行駛,而我所在的國家是靠右行駛而不同吧!如圖:

Change vehicle drawing position(更改車輛繪圖位置):
由於圖形規格的更新,較舊的pak128軌道車輛圖形看起來像是會浮在軌道上。解決方法是在車庫買車時,操作模式切換到「set offset」(偏移設置),如圖:
再選擇車輛,所選車輛的圖形預設會向下偏移4個像素,並且在離開遊戲時將設定儲存在reposition.tab中。任何128像素的圖形都可以如此操作,其它圖形就只能手動更改。但不管是哪種圖形,遊戲啟動時都會去讀取reposition.tab檔。

Schedule settings(班表設定)
在為路線設定Schedule時,點選Extract advanced settings(拉開進階選項)會出現下拉式選單,如圖:

●最小負載:車輛需要裝載到所設百分比才會真正出發。
常用於貨車路線的設定,貨物從裝到第一批開始就在計算運送時間了,時間拖越久運費越低,可是又不能裝太少,也會收不到什麼運費。
客運也可以設為1%,當運量真的很少時,避免空車一直來回很多趟,長途客機、客輪可以設定一下。

●最大等候時間(月):用分數表示,1/1表示1個月,1/2表示半個月,依此類推。
時間一到,不管裝多少貨就一定要出發。

●Temporary schedule(臨時班表):設定班表不會影響乘客路線計算。
有時候設了臨時路線為了要紓緩繁忙的路段,結果這個路線因為乘客容易到達(路徑總合加權值低),反而吸引更多乘客過來搭乘。有了這個設定就可以放心安排紓運了。

●Full load acceleration(滿載加速):設定車隊像滿載時一樣的加速性能。
車輛裝得越重加速就越慢、裝得越輕加速就越快,導致輕車會越來越接近重車,結果全部車隊集合在一起。
使用在客運的軌道、飛機、船運路線設定上吧!

●No load(不裝貨):不裝貨那就只能卸貨了。
●No unload(不卸貨):不卸貨那就只能裝貨了。
●Unload All(卸掉全部的貨):強制卸掉全部的貨。
這3項可以控制高速公路路線停靠站的上下客,例如從出發城市沿路只能上車、不能下車,這樣就不會載到只搭乘短程的乘客;到了目的城市,沿路就可以上下客;到了終點站就全部清車;既滿足長途客、也滿足當地短程客。
預計將來在遊戲裏運用再來發布。

●(最高速度):路線裏使用不同車輛也容易讓全部車隊集合在一起,設定Maxspeed讓班距保持一致。

Convoy coupling(車隊連結):只出現在軌道路線-路線管理視窗中的磁浮鐵路、單軌鐵路、火車、電車,如圖:

●Wait for coupling(等待連結):母車隊等待子車隊來連結。
●Try coupling(嘗試連結):子車隊向母車隊連結。
依照作者說明:
母車隊、子車隊先要設定好班表。
接著母車隊要先到達預訂要連結的車站,設定Wait for coupling。
再來子車隊才接著到達預訂要連結的車站,設定Try coupling。
子車隊如果先到,使用choose signals(選擇號誌燈)設定Require parent convoy to enter.(須母車隊先行進入)讓子車隊在站外等候,待母車隊到站之後,子車隊才進站。
連結之後母車隊控制子車隊,途中兩車隊如有不同停靠站(座標不同就算不同站)則自動解連。
連結失敗原因:
1.子車隊比母車隊先到站。結果子車隊會逕自離開。
2.子車隊遲遲未到站。結果母車隊會在等待一段時間後逕自離開。
3.連結之後兩車隊的下一站不同。結果兩車隊逕自離開。
這裏因為要算準車隊到站時間,我在遊戲裏沒有實際使用情形。

●Wait for time(等待時間):下列設定可以決定每站發車時刻,用以訂出班車時刻表。
●Spacing cnv/month, shift(每月車隊間隔數,偏移值):
以Spacing cnv/month設定4為例,表示每月會有4個發車間隔,也就是有4個發車時刻。
每月有1440個時間單位的話,如圖:
則每個發車間隔為360個時間單位(1440/4=360),則每月的第0、360、720、1080時刻固定會發車。
以shift設定10為例,表示發車時刻全部往後移動10個時間單位。
以發車間隔為100個時間單位為例,原本的發車時刻為0、100、200、300、400......
若加上shift為10,則發車時刻為10、110、210、310、410......
●Delay tolerance(誤點容許度):可以設定誤點多久也不算誤點。可以馬上再發車,不必等待下次發車時間。
●Load before departure(發車前才裝載):規定在發車前才要裝載貨物。因為貨物從裝到第一批開始就在計算運送時間了。
●use same departure time for all stops(每站都使用相同時刻表):通常不設定。
因為站距不同,車隊不一定會在相同時間到達,且到達時間充滿太多變數,所以只在第一站設定發車時刻表,然後設定Full load acceleration(滿載加速)即可。

這個Wait for time(等待時間)我在遊戲裏沒有實際使用情形。

Other(其它):我挑重點講。
使用地形工具的提高地形、降低地形,先按住Ctrl鍵再點滑鼠,可以拖曳圈選一片區域施工,地形高度會跟拖曳起點一樣高,如圖:

在選擇任何附屬物件(way-object)的同時按住Ctrl鍵就可以開啟set wayobj spacing(設定附屬物件間距)視窗設定放置間距,如圖:

在選擇任何高架路線工具的同時按住Ctrl鍵就可以開啟設定視窗,多一個height offset(高度偏移量)可以直接在那層高度蓋高架路線,如圖:

總結我在OTRP修改版本的應用:
1.高速公路自由超車。
2.平面快捷公車車道、城際公路外環道維持速度。
3.車道指示左轉靠左、右轉靠右。
4.臨時路線無痛開設。
5.滿載加速維持班次間隔一致。
6.站點上下客自由控制。
7.火車連結與解連。
8.使用工具施工時同時按住Ctrl鍵會有更多設定選項出現。

沒有留言:

張貼留言