明輝手游網(wǎng)唯一官網(wǎng):79things.com

本站App下載  |  

首頁(yè) > 游戲資訊 > 單機(jī)游戲

《極品飛車13:變速》車輛文件結(jié)構(gòu)詳解!

作者:佚名   來(lái)源:本站   時(shí)間:2024-03-28  點(diǎn)擊:

電腦大家應(yīng)該不怎么陌生吧!現(xiàn)在電腦已經(jīng)普及到大多數(shù)人的家庭之中了,電腦的用途非常地廣,不同年齡段、不同行業(yè)的人對(duì)電腦的用處不同。但是對(duì)于很多的年輕人來(lái)說(shuō)電腦最大的用途就是玩游戲了。電腦游戲大家肯定玩過(guò)吧!它可以使人上癮。

今天為大家?guī)?lái)一些關(guān)于SHIFT文件攻克的最新消息,并在此進(jìn)行詳細(xì)講解,希望能給對(duì)此感興趣的朋友提供一些幫助和了解~

【極品飛車13-變速】多種未知格式的游戲文件最近均已被全球的語(yǔ)法高手們一一攻克,并開(kāi)始出現(xiàn)一些類似于提取器的模塊程序~ 通過(guò)這些程序組合并使用后,能成功提取出相關(guān)游戲文件中的所有子文件,對(duì)研究破_解有了更進(jìn)一步的成果!

在SHIFT各種補(bǔ)丁即將出現(xiàn)之前,我在此將自己最新知道的一些消息和東西給所有感興趣的朋友作一些講解和介紹~

首先我通過(guò)近幾天的研究和查找相關(guān)資料,對(duì)游戲文件結(jié)構(gòu)有了一定了解~ 下面我主要以車輛文件為例,給大家介紹介紹SHIFT的文件特點(diǎn)和細(xì)節(jié)之處~
通過(guò)使用一個(gè)"Script"語(yǔ)言支持的程序組,我成功的提取出一些FX文件以及大家最感興趣的車輛文件,雖然還有很多格式的子文件無(wú)法破譯,但已經(jīng)有了很大的突破,基本上車輛文件中的子文件都可以
通過(guò)安裝一些特殊插件后,所支持的常用圖象軟件或文本軟件都可以對(duì)其進(jìn)行查看和研究~

在此,我以 “保時(shí)捷997_GT2”的車輛文件為例,為大家做一寫簡(jiǎn)單的講解和介紹~ 大家也會(huì)從中發(fā)現(xiàn)這代SHIFT的細(xì)節(jié)之處,一款游戲的好壞,從游戲文件就可以最直觀的去分析~ 通過(guò)查看游戲物理引擎腳本,模型、貼圖等~就可以最直觀的看出游戲的開(kāi)發(fā)細(xì)致程度和客觀評(píng)定對(duì)游戲本身的好壞~

下面就是講解和示意圖~ 大家可以看看大概~ 很多具體的東西講起來(lái)比較復(fù)雜~ 用“白話”的方式給大家介紹一下也罷~

1.下圖是上述所提到的一個(gè)由"Script"語(yǔ)言支持的程序組,通過(guò)它我可以將游戲文件中的子文件全部提取出來(lái)~

2.下圖是提取過(guò)程,我選擇"nfsshift.bms"簡(jiǎn)易腳本進(jìn)行文件提取,這時(shí)我找到游戲目錄下的車輛文件:(X:Need for Speed SHIFTPakfilesVehiclesPORSCHE_997GT2.bff)文件,并選擇它~

3.下圖為提取過(guò)程,這個(gè)“保時(shí)捷997_GT2”的車輛文件中總共有1137個(gè)子文件,其中包含4個(gè)文件夾,分別為"animation"、"audio"、"render"、"vehicles",它們所包含的子文件分別為"車手動(dòng)作"、"車輛音頻"、"共享用文件(改裝配件)"、"車輛"~ 其中,"車手動(dòng)作"主要是一些腳本文件,不同的車輛駕駛室內(nèi)的空間結(jié)構(gòu)各不相同,所以駕駛員的動(dòng)作“線”位置和坐標(biāo)也各不相同~  "車輛音頻"主要是一些各種車輛起步,低速,中速,高速,疾速時(shí)不同的車輛聲效~當(dāng)然還包括排氣、換擋等有關(guān)的其他聲效~  "共享用文件"主要是一些改裝配件的匹配文件~  "車輛"中則是所有的車輛物理引擎效果腳本文件和車輛模型及貼圖文件~
這個(gè)“保時(shí)捷997_GT2”的車輛文件有12.6MB,提取解壓后到達(dá)33.4MB,可以看出這代SHIFT的文件壓縮非常比非常高,同時(shí)這種技術(shù)也非常先進(jìn),直到目前還沒(méi)有人能做出完全破譯所有文件結(jié)構(gòu)的工具或軟件~


4.下圖為"vehicles"(車輛)文件中的子文件~ 非常多,所以屏幕截圖看不完整~ 光"porsche_997gt2"子文件夾內(nèi)就有142個(gè)文件組成~ 其中包含很多輪轂、附件等部位的相關(guān)文件~ 由于暫時(shí)沒(méi)有辦法再進(jìn)一步進(jìn)行破譯,所以暫時(shí)不對(duì)這142個(gè)".bmt"以及".meb"文件進(jìn)行講解和研究~

5.下面我將把73種貼圖文件選一部分給大家參看~ (NFS13的貼圖非常精細(xì),完全不亞于《GRID》和《GTRE》等游戲的貼圖細(xì)致度~)


進(jìn)氣隔扇


進(jìn)氣隔扇法線圖(一種2D>3D化的技術(shù)~  反光效果時(shí),通過(guò)不同打光效果使得2D圖片有立體感~)


不同顏色的車燈燈光~ 各種倒車燈~ 大燈等~燈光~~


撞車時(shí)的玻璃破碎紋理~


沙塵污物~


車內(nèi)氮?dú)馄康荣N圖~


上圖的法線圖


引擎改(各分別為半部分)


先燈~ LOGO~ 以及油箱蓋和反光鏡輪廓~

上圖的法線圖


后部引擎貼圖


制動(dòng)器~ 可以通過(guò)改它的顏色~ 讓車輛在游戲中的制動(dòng)器變?yōu)榧t色之類的~


車燈玻璃破碎效果~


在車體外看車內(nèi)的室內(nèi)貼圖~(像TDU一樣~ 是從車外往里看的時(shí)候用到的貼圖~ 不是坐在車內(nèi)視角時(shí)看到的~)


各種燈~~后燈~


發(fā)亮?xí)r的程度效果~

車身貼花1~


車身貼花2~


車身貼花3~


車身貼花4~


車輪影圖~


轉(zhuǎn)動(dòng)后的車輪影圖~


一些附件~ 引擎蓋板之類的~

上圖的高光圖~(陽(yáng)光下使用高光圖~ 陰影下使用上圖~)


車輪法線圖~


車輪胎胎紋法線圖~


車輪胎胎紋貼圖~


靜止時(shí)的車輪影圖~


車胎法線圖~


車體影子~


皮革法線圖~


皮革逢接線貼圖~


皮革逢接線法線圖~


室內(nèi)碳纖維貼圖~


皮革紋理法線圖~

皮革逢接線貼圖~


MOMO方向盤貼圖~


儀表板~


MOMO方向盤法線圖~


~~~~


儀表板底圖~


儀表板貼圖~

車內(nèi)控制臺(tái)貼圖~


上圖法線圖~


附件~


中控臺(tái)及座椅~


6.看完了上面的貼圖,再來(lái)看看"physics"(物理引擎)文件夾的一些腳本數(shù)據(jù)參數(shù)~

首先我打開(kāi)"engines"(發(fā)動(dòng)機(jī))文件~ 具體腳本參數(shù)如下:

//NFS PC Porsche 3.6L 997 GT2 525hp @7600 [email=680nm@2200-4500]680nm@2200-4500[/email]
RPMTorque=( 0 , -58.40 , -58.00 )
RPMTorque=( 250 , -33.00 , -9.00 )
RPMTorque=( 500 , -23.70 , 160.00 )
RPMTorque=( 750 , -22.00 , 250.00 )
RPMTorque=( 1000 , -30.40 , 375.00 )
RPMTorque=( 1250 , -35.00 , 390.00 )
RPMTorque=( 1500 , -40.00 , 405.00 )
RPMTorque=( 1750 , -48.00 , 420.00 )
RPMTorque=( 2000 , -49.60 , 435.00 )
RPMTorque=( 2250 , -53.00 , 447.00 )
RPMTorque=( 2500 , -55.20 , 459.00 )
RPMTorque=( 2750 , -60.00 , 462.00 )
RPMTorque=( 3000 , -65.20 , 470.00 )
RPMTorque=( 3250 , -70.00 , 470.00 )
RPMTorque=( 3500 , -75.70 , 480.00 )
RPMTorque=( 3750 , -80.00 , 485.00 )
RPMTorque=( 4000 , -88.00 , 480.00 )
RPMTorque=( 4250 , -96.00 , 480.00 )
RPMTorque=( 4500 , -104.90 , 480.00 )
RPMTorque=( 4750 , -112.00 , 480.00 )
RPMTorque=( 5000 , -120.10 , 470.00 )
RPMTorque=( 5250 , -130.00 , 450.00 )
RPMTorque=( 5500 , -140.60 , 430.00 )
RPMTorque=( 5750 , -150.00 , 415.00 )
RPMTorque=( 6000 , -160.50 , 410.00 )
RPMTorque=( 6250 , -170.00 , 395.00 )
RPMTorque=( 6500 , -180.70 , 380.00 )
RPMTorque=( 6750 , -193.00 , 370.00 )
RPMTorque=( 7000 , -200.20 , 350.00 )
RPMTorque=( 7250 , -213.00 , 330.00 )
RPMTorque=( 7500 , -226.00 , 320.00 )
RPMTorque=( 7750 , -238.00 , 310.00 )
RPMTorque=( 8000 , -252.20 , 280.00 )
RPMTorque=( 8250 , -275.00 , 255.00 )
RPMTorque=( 8500 , -298.80 , 225.00 )
RPMTorque=( 8750 , -315.00 , 200.00 )
RPMTorque=( 9000 , -330.00 , 160.00 )
RPMTorque=( 9250 , -365.00 , 80.00 )
RPMTorque=( 9500 , -400.00 , 50.00 )
RPMTorque=( 9750 , -450.00 , 10.00 )
RPMTorque=( 10000 , -500.00 , 0.00 )
FuelConsumption=3.50e-5
FuelEstimate=1.0
EngineInertia=0.400
IdleThrottle=1.0
IdleRPMLogic=(950.0, 970.0)
LaunchEfficiency=0.969
LaunchRPMLogic=(4500.0, 5500.0)
RevLimitRange=(7000.0, 0.0, 0 )
RevLimitSetting=0
RevLimitLogic=150.0
EngineMapRange=(0, 1, 5)
EngineMapSetting=2
EngineBrakingMapRange=(0.0, 0.00077, 6)
EngineBrakingMapSetting=2
OptimumOilTemp=95.0
CombustionHeat=40.0
EngineSpeedHeat=12.000e-004
OilMinimumCooling=7.50e-003        // heat dissipated without oil/water transfer
OilWaterHeatTransfer=(3.962e-001,7.925e-005)  // heat transfer from oil to water (base, w/ engine speed)
WaterMinimumCooling=3.962e-003
RadiatorCooling=(1.592e-004, 10.039e-005)
LifetimeEngineRPM=(8000.0, 95.0)
LifetimeOilTemp=(100.00, 3.00)
LifetimeAvg=10800
LifetimeVar=2250
EngineEmission=(0.0, 0.53, 0.77)
EngineSound=(0.330, 0.800, -1.0)
OnboardStarter=1
StarterTiming=(1.4, 0.4, 1.5)

從以上參數(shù)中,我們可以看到車輛的所有引擎參數(shù),如基本性能信息,不同扭距下的RPM轉(zhuǎn)速~ 引擎聲音~ 最高轉(zhuǎn)速~ 水冷卻參數(shù)等等~  通過(guò)將來(lái)對(duì)這里的修改并導(dǎo)入到游戲原文件內(nèi),我們即可隨意更改車輛的“超級(jí)性能”了~

接著是"gearbox"(變速箱)參數(shù):

// Common gearbox
[GEAR_RATIOS]
ratio=(10,35)   // 3.500 (0)
ratio=(12, 36)  // 3.000
ratio=(22, 65)  // 2.955
ratio=(12, 35)  // 2.917
ratio=(16, 46)  // 2.875
ratio=(12, 34)  // 2.833
ratio=(14, 39)  // 2.786
ratio=(12, 33)  // 2.750
ratio=(17, 46)  // 2.706
ratio=(12, 32)  // 2.667
ratio=(16, 42)  // 2.625 (10)
ratio=(12, 31)  // 2.583
ratio=(13, 33)  // 2.538
ratio=(12, 30)  // 2.500
ratio=(13, 32)  // 2.462
ratio=(12, 29)  // 2.417
ratio=(16, 38)  // 2.375
ratio=(12, 28)  // 2.333
ratio=(14, 32)  // 2.286
ratio=(12, 27)  // 2.250
ratio=(14, 31)  // 2.214 (20)
ratio=(12, 26)  // 2.167
ratio=(16, 34)  // 2.125
ratio=(12, 25)  // 2.083
ratio=(22, 45)  // 2.045
ratio=(12, 24)  // 2.000
ratio=(23, 45)  // 1.957
ratio=(13, 25)  // 1.923
ratio=(19, 36)  // 1.895
ratio=(15, 28)  // 1.867
ratio=(24, 44)  // 1.833 (30)
ratio=(15, 27)  // 1.800
ratio=(17, 30)  // 1.765
ratio=(23, 40)  // 1.739
ratio=(14, 24)  // 1.714
ratio=(25, 42)  // 1.680
ratio=(17, 28)  // 1.647
ratio=(16, 26)  // 1.625
ratio=(20, 32)  // 1.600
ratio=(19, 30)  // 1.579
ratio=(20, 31)  // 1.550 (40)
ratio=(25, 38)  // 1.520
ratio=(25, 37)  // 1.480
ratio=(22, 32)  // 1.455
ratio=(19, 27)  // 1.421
ratio=(18, 25)  // 1.389
ratio=(22, 30)  // 1.364
ratio=(18, 24)  // 1.333
ratio=(17, 22)  // 1.294
ratio=(19, 24)  // 1.263
ratio=(20, 25)  // 1.250 (50)
ratio=(19, 23)  // 1.211
ratio=(17, 20)  // 1.176
ratio=(22, 25)  // 1.136
ratio=(22, 24)  // 1.091
ratio=(22, 23)  // 1.045
ratio=(22, 22)  // 1.000
ratio=(24, 23)  // 0.958
ratio=(28, 23) // 0.83
ratio=(29,22) //0.76 (59)
ratio=(31,21) // 0.71 (60)
ratio=(33,20) // 0.606
ratio=(32,16) // 0.50
[FINAL_DRIVE]
bevel=(1, 1)
ratio=(6, 39)  // 6.50 (0)
ratio=(6, 38)  // 6.33
ratio=(5, 31)  // 6.20
ratio=(6, 36)  // 6.00
ratio=(6, 35)  // 5.83
ratio=(6, 34)  // 5.67
ratio=(6, 33)  // 5.50
ratio=(7, 38)  // 5.43
ratio=(7, 37)  // 5.29
ratio=(7, 36)  // 5.14
ratio=(7, 35)  // 5.00 (10)
ratio=(7, 34)  // 4.86
ratio=(7, 33)  // 4.71
ratio=(8, 37)  // 4.63
ratio=(9, 41)  // 4.56
ratio=(8, 36)  // 4.50
ratio=(9, 40)  // 4.44
ratio=(9, 39)  // 4.33
ratio=(9, 38)  // 4.22
ratio=(9, 37)  // 4.11
ratio=(9, 36)  // 4.00 (20)
ratio=(9, 35)  // 3.89
ratio=(11, 42) // 3.82
ratio=(12, 45) // 3.75
ratio=(10, 37) // 3.70
ratio=(10, 36) // 3.60
ratio=(11, 39) // 3.55
ratio=(10, 35) // 3.50
ratio=(11, 38) // 3.45
ratio=(10, 34) // 3.40
ratio=(12, 40) // 3.33 (30)
ratio=(12, 39) // 3.25
ratio=(14, 43) // 3.07
ratio=(13, 39) // 3.00
ratio=(16, 47) // 2.94
ratio=(11, 32) // 2.91
ratio=(14, 40) // 2.86
ratio=(15, 42) // 2.80 (37)
ratio=(15,40) // 2.66
ratio=(16,40) // 2.50

大家通過(guò)這些參數(shù)可以看出這代SHIFT進(jìn)行物理參數(shù)編寫時(shí),變速箱參數(shù)非常精細(xì),數(shù)值間的跨度小,數(shù)值范圍大~ 都是認(rèn)真編寫的體現(xiàn)~

最后挑一個(gè)GT2等超跑所特有的物理參數(shù)~ "turbo"(機(jī)械增壓)參數(shù)~

//Generic model for LowRPM - all in by 3500 rpms
Turbo1 Size=50.0     // size of turbo influences eventual power delivered
Turbo1 Turbine Optimum RPM=140000.0  // optimum rpm where turbo produces max power
Turbo1 Engine RPM=500.0   // engine rpm that the turbine begins to spin up from
Turbo1 Inertia=10000.0    // turbo inertia/spin up speed
Turbo1 Friction=2000.0    // turbo friction/spin down speed
Turbo1 Fuel Percentage=10.0   // extra percentage of fuel burned at optimum RPM (0 = no change)
WasteGate Opening=0.5    // minimum time taken in seconds for the wastegate to open
WasteGate Closing=0.3    // minimum time taken in seconds for the wastegate to close

以上參數(shù)后面,都對(duì)應(yīng)有相應(yīng)的注解~ 估計(jì)是編寫人員怕以后優(yōu)化時(shí)由其他人負(fù)責(zé),所以寫明了具體含義,以免自己忘記或其他人看不懂的情況發(fā)生~~~~??~~ 同樣看到很多關(guān)于轉(zhuǎn)速、何時(shí)開(kāi)啟/關(guān)閉增壓器等具體參數(shù)~

還有很多關(guān)于游戲主界面,甚至是駕駛員頭盔貼花等文件沒(méi)有給大家做示范~ 在這里就不一一介紹了~
等將來(lái)技術(shù)完善后,并真正做出補(bǔ)丁的時(shí)候,在細(xì)致的把制作方法和具體流程寫給感興趣的人看~,希望能對(duì)此有一些幫助~


總結(jié):~

經(jīng)過(guò)對(duì)SHIFT的文件進(jìn)行了仔細(xì)查看和研究~ 發(fā)現(xiàn)SHIFT的制作開(kāi)發(fā)比較認(rèn)真和嚴(yán)謹(jǐn),并且質(zhì)量也都非常高~ 所以在我認(rèn)為~ SHIFT這代是一個(gè)比較優(yōu)秀的作品!~

Evozhui
2009.09.29

更多相關(guān)內(nèi)容請(qǐng)?jiān)L問(wèn):極品飛車13:變速專區(qū)


玩游戲可以在很大程度上讓大家放松放松,但是我建議大家不要把過(guò)多的時(shí)間投入到工作當(dāng)中,因?yàn)檫@樣的話大家很有可能上癮,這樣不利于大家的工作或者是學(xué)習(xí)。

推薦游戲

換一換